列表是Python中最基本也是最常用的数据结构之一。列表中的每个元素都被分配一个数字作为索引,用来表示该元素在列表内所排在的位置。第一个元素的索引是0,第二个索引是1,依此类推。
Python的列表是一个有序可重复的元素集合,可嵌套、迭代、修改、分片、追加、删除,成员判断。
从数据结构角度看,Python的列表是一个可变长度的顺序存储结构,每一个位置存放的都是对象的指针。
比如,对于这个列表 alist = [1, “a”, [11,22], {“k1”:”v1”}]
,其在内存内的存储方式是这样的:
1. 创建方式
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。列表内的元素,可以是其它任意类型的数据,可多层嵌套列表,元素个数无限制。
>>> lis = [] # 创建一个空列表
>>> lis = [1, 2, 3]
>>> lis = [1, 'a', [11,22], {
'k1':'v1'}]
>>> lis = [1, 2, [3, 4, 5]]
2. 访问列表内的元素
列表从0开始为它的每一个元素顺序创建下标索引,直到总长度减一。要访问它的某个元素,以方括号加下标值的方式即可。注意要确保索引不越界,一旦访问的 索引超过范围,会抛出异常。所以,一定要记得最后一个元素的索引是len(list)-1。
>>> lis = ["a", "b", "c"]
>>> lis[0]
'a'
>>> lis[1]
'b'
>>> lis[2]
'c'
>>> lis[3]
Traceback (most recent call last):
File "", line 1, in <module>
lis[3]
IndexError: list index out of range
3. 修改元素的值
直接对元素进行重新赋值。
>>> lis[0]
'a'
>>> lis[0] = "d"
>>> lis[0]
'd'
4. 删除元素
使用del语句或者remove(),pop()方法删除指定的元素。
>>> lis = ["a", "b", "c"]
>>> del lis[0]
>>> lis
['b', 'c']