列表(list)是Python以及其他语言中最常用到的数据结构之一。Python使用使用中括号[ ] 来解析列表。列表是可变的(mutable)——可以改变列表的内容。
如
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
列表的索引从0开始,可以对列表进行切片,组合等。
如定义一个列表a
a = ['a', 'b', 'c', '', '', '']
1.查询
对它进行查询
a = ['a', 'b', 'c', '', '', ''] print(a[2])
print(a[0: 3])
print(a[0: 5: 2])
print(a[-1])
print(a[3: 0: -1])
print(a[:])
输出为
c
['a', 'b', 'c']
['a', 'c', '']
3
['', 'c', 'b']
['a', 'b', 'c', '', '', '']
可知,a[3: 0: -1]中的“-1”表示方向。同样的,输出的结果,包括左边的不包括右边的。
2.增
insert方法用于将对象插入到列表中,可以是任何位置
append方法在列表末尾增加新的内容
extend方法在列表末尾追加另一个序列中的多个值
a = ['a', 'b', 'c', '', '', '']
b = ['my', 'name', 'no'] a.append('chen')
print(a)
a.insert(4,'')
print(a)
a.extend(b)
print(a)
输出为
['a', 'b', 'c', '', '', '', 'chen']
['a', 'b', 'c', '', '', '', '', 'chen']
['a', 'b', 'c', '', '', '', '', 'chen', 'my', 'name', 'no']
3.改
即是对相应的值重新赋值
对于a = ['a', 'b', 'c', '1', '2', '3']
a[4] = ''
print(a)
a[0: 2] = ['今天', '阴天']
print(a)
输出
['a', 'b', 'c', '', '', '']
['今天', '阴天', 'c', '', '', '']
4.删除
del 按索引删除指定元素,或者整个列表
remove() 删除指定元素
pop() 删除最后一个元素,有一个返回值
del a[0]
print(a)
a.remove('c')
print(a)
soo = a.pop()
print(soo)
print(a)
输出
['阴天', 'c', '', '', '']
['阴天', '', '', '']
3
['阴天', '', '']
5.其他操作
列表的嵌套操作时,要找到找到里面的值,可用多个[]来找到,如
e = [[5, 6], ['a', 'b']]
print(e[1][1])
输出为:b
count方法通缉某个元素在列表中出现的次数
index 方法用于从列表中找到某个元素,有多个时,返回第一个匹配项的索引
reverse 方法将列表中的元素反向存放
sort 方法用于在原位置对列表进行排序,数字按大小,字符串按守字符的编码大小排序
c = ['今天', 'c', '阴天', 'c', '', '', '']
print(c.count('c'))
print(c.index('c'))
c.reverse()
print(c)
c.sort()
print(c)
输出
2
1
['', '', '', 'c', '阴天', 'c', '今天']
['', '', '', 'c', 'c', '今天', '阴天']
6.enumerate操作
用于输出列表里的内容时,方便编号
a = ['a', 'b', 'c', '']
for i in enumerate(a):
print(i)
print("--------")
for i in enumerate(a, 1):
print(i)
print("--------")
for i, v in enumerate(a, 1):
print(i, v)
输出
(0, 'a')
(1, 'b')
(2, 'c')
(3, '')
--------
(1, 'a')
(2, 'b')
(3, 'c')
(4, '')
--------
1 a
2 b
3 c
4 1
7.元组
元组与列表类似,不过元组里的内容无法更改
表示方法为:
a = ('a', 'b', 'c', '')
只有一个元素时,应该表示为:a = (55,)
元组只有两个方法,一个是count,一个是index