master
/ 6.2.1 列表的创建.ipynb

6.2.1 列表的创建.ipynb @masterview markup · raw · history · blame

Notebook

6.2 列表的创建

列表的创建主要有以下几种方法:

(1)将用方括号“__[]__”括起来的一组数据赋值给一个变量,数据可以是多个,也可以是0个,数据个数为0时创建一个空列表。

(2)使用__list()__函数,将元组、range对象、字符串、字典的键、集合或其它类型的可迭代对象类型的数据转换为列表,当参数为空时生成一个空列表。

(3)使用__split()__函数将一个字符串按指定特符切分后,转为列表。

In [1]:
Ls = [3,4,5,6,7]
print(Ls)

print(list())             # list()函数的参数为空时,产生一个空列表,输出结果为:[]
L1= list((1,2,3,4,5))     # 将元组(1,2,3,4,5) 转为列表
print(L1)                 # 输出结果为:[1, 2, 3, 4, 5]
L2 = list(range(5))       # 将range对象转为列表
print(L2)                 # 输出结果为:[0, 1, 2, 3, 4]
L3 = list('12345')        # 将字符串转为列表
print(L3)                 # 输出结果为:['1', '2', '3', '4', '5']
s = '我,是,中,国,人'      # 这是一个字符串
L = s.split(',')          # 根据逗号(,)对字符串s进行切分并转为列表
print(L)                  # 输出结果为:['我', '是', '中', '国', '人']
[3, 4, 5, 6, 7]
[]
[1, 2, 3, 4, 5]
[0, 1, 2, 3, 4]
['1', '2', '3', '4', '5']
['我', '是', '中', '国', '人']

由于列表中可以包含不同类型的数据,各元素可能占用空间大小不同,所以在创建列表时,Python采用__动态分配__的方法进行数据存储,数据存储在大小不一、不连续的内存单元中,以提高内存的利用率。

但随之带来的问题是,当列表中的数据项较多时,遍历列表的效率会较低,遍历时间较长。因此在访问数据量较大的列表时,一般会根据所解决问题的需求来采用适当的方法提高效率,比如减少循环次数,或转换为集合或字典及使用相关方法等等。