Python 3.8从零开始学
上QQ阅读APP看书,第一时间看更新

3.2.2 嵌套列表

目前,我们接触到的列表都是一维的,也就是一个列表里面有多个元素,每个元素对应一个数值或一个字符串。那么,列表中是否可以有列表呢,这里就引入了多维列表的概念。

所谓多维列表,就是列表中的元素也是列表。就如“序列号”大巴上的同学,目前分成了6个小组,对于“序列号”大巴,我们可以看成是一个列表,6个小组也可以看成在“序列号”大巴里的6个列表,每个列表中又分别存放了各个同学的序号。

在交互模式下表示如下:

>>> bus=[[0,1,2,3,4],[5,6,7,8,9],[10,11,12,13,14],[15,16,17,18,19],[20,21, 22,23,24],[25,26, 27,28,29,30]]
>>> bus
[[0, 1, 2, 3, 4], [5, 6, 7, 8, 9], [10, 11, 12, 13, 14], [15, 16, 17, 18, 19], [20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30]]
>>> group1=bus[0]
>>> group1  #取得第一组所有同学的序号
[0, 1, 2, 3, 4]
>>> type(group1)
<class 'list'>
>>> group2=bus[1]  #取得第二组所有同学的序号
>>> group2
[5, 6, 7, 8, 9]
>>> type(group2)
<class 'list'>
>>> group6=bus[5]  #取得第三组所有同学的序号
>>> group6
[25, 26, 27, 28, 29, 30]
>>> type(group6)
<class 'list'>
>>> number0=group1[0]   #取得0号同学的序号
>>> number0
0
>>> number30=group6[5]  #取得30号同学的序号
>>> number30
30

由操作结果得知,在列表中可以嵌套列表,嵌套的列表取出后还是列表。多维列表的操作和一维列表差不多,只不过操作多维列表时,需要先逐步得到多维列表中的一维列表元素,拿到一维列表元素后,其操作方式就如同一维列表了。当然,也可以对多维列表做分片操作,本书不做具体示例演示。