(1)创建列表
创建一个普通列表:member = ['小布丁', '小宝贝']
创建一个混合列表:mix = [1, 3.14, [1, 2, 3]]
创建一个空列表:empty = []
(2)向列表添加元素
append():添加元素在尾部,一次只能添加一个元素。
extend():extend()是使用一个列表来扩充另一个列表,也是添加到尾部
insert():有两个参数,第一个参数是插入的位置,第二个参数是插入的元素
(3)
-
list1 = [1, 3, 2, 9, 7, 8]
-
Python 的列表很聪明,竟然支持负数索引,如图:
正常索引是从左到右索引,负数索引是从右到左。
(4)步长可以是负数,改变方向(从尾部开始向左走):
>>> list1[::-2]
[8, 9, 3]
(5)从列表中获取元素
跟数组一样,我们可以通过元素的索引值(index)从列表中获取单个元素,注意,列表索引值是从0开始的。
(6)从列表中删除元素
remove():
del
pop():
(7)列表分片(slice)
利用索引值,每次我们可以从列表获取一个元素,但我们总是贪心的,如果一次性需要获取多个元素,有没有办法实现呢?利用列表分片,我们可以简单实现这个要求。
列表[a:b]
拷贝列表索引a到b之间的元素作为新的列表
列表[a:] 拷贝列表索引a到结尾之间的元素作为新的列表
列表[:b] 拷贝列表索引开头到b之间的元素作为新的列表
列表[:] 拷贝原列表作为新的列表
(8)修改列表中的列表元素
将下边这个列表的'AA'修改为'BB'?
list1 = [1, [1, 2, ['AA']], 3, 5, 8, 13, 18]
应该这样做:
list1 = [1, [1, 2, ['AA']], 3, 5, 8, 13, 18]
list1[1][2][0] = 'BB'
(9)列表排序
列表名.sort()
(10)逆序
列表名.reverse()
列表名.sort(reverse=True)
(11)列表推导式或列表解析
列表推导式(List comprehensions)也叫列表解析,可以用来动态的创建列表.
把下面列表推导式还原出来。
>>> list1 = [(x, y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]
等价于:
list1 = []
for x in range(10):
for y in range(10):
if x%2 == 0:
if y%2 != 0:
list1.append((x, y))