容器是一种可以把多个元素放在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in等关键字判断某个元素是否包含在容器中。Python中,容器包括列表(list)、元组(tuple)、字典(dict)、集合(set)等。
list容器
列表(list)是一种有序的容器,放入list中的元素,将会按照一定顺序排列
list的基本使用
1 2 3 4 5 6 7 8
| scores = [56, 66, 35, 82, 99, 100] names = ['Bill', 'Niki', 'Linda', 'Kimi', 'Don', 'Silvia']
anyList = ['Kimi', 66, 'Linda', True, 33.4, 'False']
print(anyList)
|
list的访问
1 2 3 4 5 6 7 8 9 10 11
| for item in anyList: print(item)
print(anyList[0]) print(anyList[1])
print(anyList[-1]) print(anyList[-2])
|
list切片
1 2 3 4 5 6 7 8 9 10 11
| print(anyList[1:3]) print(anyList[1:-1]) print(anyList[-3:-1])
print(anyList[0:5:2]) print(anyList[1:5:2])
print(anyList[-1:-6:-1]) print(anyList[-1:-6:-2])
|
list添加元素
使用append()
在列表末尾添加元素
1 2
| names.append('Nancy') print(names)
|
使用insert()在指定位置添加元素
1 2
| names.insert(2, 'Carol') print(names)
|
list删除元素
1 2 3 4 5 6 7 8 9
| n = names.pop() print(n) print(names)
n = names.pop(3) print(n) print(names) ===> ['Bill', 'Niki', 'Carol', 'Kimi', 'Don', 'Silvia']
|
tuple容器
元组(tuple)和list一样,也是一个有序容器,在元组中,同样可以包含0个或者多个元素,并且也支持索引访问、切片等操作。
tuple和list不一样的是,tuple是固定不变的,一旦变成tuple,tuple中的每一个元素都不可被改变,同时也不能再往tuple中添加数据。
在运行上tuple的性能是list的数倍。
tuple的基本用法
1 2 3 4 5 6 7 8 9 10 11 12
| namesTuple = ('Alice', 'Bob', 'Candy', 'David', 'Ema') print(namesTuple)
print(namesTuple[0]) print(namesTuple[1]) print(namesTuple[-1])
print(namesTuple[-4:-1]) print(namesTuple[-4:-1:2]) print(namesTuple[-1:-5:-2])
|
list转tuple
1 2 3
| anyList = ['Kimi', 66, 'Linda', True, 33.4, 'False'] anyTuple = tuple(anyList) print(anyTuple)
|
tuple的一些其它方法
统计tuple中某个元素出现了多少次
1 2 3
| tp = (1,2,3,6,4,2,3,2,1,2,9) print(tp.count(1)) print(tp.count(2))
|
使用index()方法获取指定元素的下标,如果指定元素不存在,则报错
1 2
| print(tp.index(6)) >>> print(tp.index(2))
|
创建单个元素的tuple
对于多个元素的tuple,最后加不加这个逗号,效果是一样的
1 2
| tp = (1, 2, 3,) print(tp)
|
完