在实际开发中,经常需要将一些(不只一个)数据暂储起来,以便将来使用。说到这里,一些读者可能知道或听说过数组,它就可以把多个数据挨个存储到一起,通过数组下标可以访问数组中的各个元素。但使用数组存储数据有一个弊端,就是所存储的数据必须类型一致。
需要明确的是,Python 中没有数组,但是加入了更加强大的列表。如果把数组看做是一个集装箱,那么 Python 的列表就是一个工厂的仓库。
从形式上看,列表会将所有元素都放在一对中括号 [] 中,相邻元素之间用逗号分隔,如下所示:
[element1,element2,element3,...,elementn]
格式中,element1~elementn 表示列表中的元素,个数没有限制,只要是 Python 支持的数据类型就可以。
从内容上看,列表可以存储整数、实数、字符串、列表、元组等任何类型的数据,并且和数组不同的是,在同一个列表中元素的类型也可以不同。比如说:
["c.biancheng.net" , 1 , [2,3,4] , 3.0]
可以看到,列表中同时包含字符串、整数、列表、浮点数这些数据类型。
注意,在使用列表时,虽然可以将不同类型的数据放入到同一个列表中,但通常情况下不这么做,同一列表中只放入同一类型的数据,这样可以提高程序的可读性。
另外,在其它 Python 教程中,经常用 list 代指列表,这是因为列表的数据类型就是 list,通过 type() 函数就可以知道,例如:
>>> type(["c.biancheng.net" , 1 , [2,3,4] , 3.0]) <class 'list'>
可以看到,它的数据类型为 list,就表示它是一个列表。(更多学习内容,请点击python学习网)
Python创建列表
在 Python中,创建列表的方法可分为 2 种,下面分别进行介绍。
使用 = 运算符直接创建列表
和其他类型的 Python 变量一样,创建列表时,也可以使用赋值运算符“=”直接将一个列表赋值给变量,其语法格式如下:
listname = [element1 , element2 , element3 , ... , elementn]
其中,listname 表示列表的名称,注意,在命名时既要符合 Python 命名规范,也要尽量避开与 Python 的内置函数重名。
例如,下面定义的列表都是合法的:
num = [1,2,3,4,5,6,7] name = ["C语言中文网","http://c.biancheng.net"] program = ["C语言","Python","Java"]
另外,使用此方式创建列表时,列表中元素可以有多个,也可以一个都没有,例如:
emptylist = []
这表明,emptylist 是一个空列表。
使用list()函数创建列表
除使用前面介绍的方括号语法创建列表之外,Python 还提供了一个内置的 list() 函数来创建列表,它可用于将元组、区间(range)等对象转换为列表,例如:
a_tuple = ('crazyit', 20, -1.2) # 将元组转换成列表 a_list = list(a_tuple) print(a_list)
输出结果
['crazyit', 20, -1.2]
此程序的功能是将一个元组 ('crazyit', 20, -1.2) 转换成列表。由于尚未学习元组,因此初学者只需要知道,用圆括号 () 括起来的多个数据,就是一个元组。