增:
函数 | 用法 | 参数 | 作用 |
---|---|---|---|
append() | list.append(object) | object是需要加入的元素 | 将object追到加列表的最后一个位置 |
insert() | list.insert(index, object) | index是需要插入的位置下标,object是需要插入的元素(可以是列表等等,但这只占用原列表的一个位置) | 将object插入到index下标的位置,原index下标的元素被挤到后面 |
extend() | list.extend(iterable) | iterable是可迭代对象,例如字符串列表等 | 将iterable里的每个元素都顺序的填入原列表的最后,区别于append() |
* | list * Number | Number是数字 | 这个用法类似于字符串的乘法,将List重复拼接Number次 |
+ | list1 + list2 | 无 | 用于拼接两个列表(只能是两个列表),类似字符串的加法,并不会改变原列表 |
删:
函数 | 用法 | 参数 | 作用 |
---|---|---|---|
del | del list[x] | x是列表元素的下角标 | 可以删除list[x]元素,当使用del list时,可以删除整个列表,无返回值 |
pop() | list.pop(index = -1) | index是需要删除的列表元素下标,默认是最后一个元素 | 删除指定元素并返回被删除的元素(有返回值),操作不当可能会越界 |
remove() | list.remove(x) | x是列表中需要被删的元素 | 从左往右删除指定元素,注意不可以用for来遍历删除列表中某个元素,会出现问题 |
查:
函数 | 用法 | 参数 | 作用 |
---|---|---|---|
index() | list.index(value,start = 0,end = len(list)) | value为需要检索的元素,star为其实下标,end为结束下标,检索范围是[star, end) | 从左到右查找value的下标,遇到了就立即返回 |
count() | list.count(value) | value是要被统计个数的元素 | 返回value在列表中出现的次数 |
[ : : ] | list[start :end : step] | 区间是[start , end),步长是step | 从list中取出一小部分 |
使用enumerate()函数遍历列表:
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
例如:
a = [1, 2, 3, 4]
print(list(enumerate(a)))
输出结果是:[(0, 1), (1, 2), (2, 3), (3, 4)]
这是一个由元组组成的列表,可以通过for循环对a进行遍历,例如:
a = [1, 2, 3, 4]
for index, value in enumerate(a):
print(index)
结果是:打印出了0-3的编号
这样的好处是可以遍历到列表中value对应的下标号
一些列表的其他操作:
函数 | 用法 | 参数 | 作用 |
---|---|---|---|
in | num in list | 无 | 若num是list中的元素,则返回true,否则返回false |
not in | num not in list | 无 | 若num不是list的元素,则返回true,否则返回false |
sorted() | sorted(list , reverse = Flase) | list是需要被排序的列表,reverse为Flase的时候为正序,为True的时候为倒序 | 将列表中元素进行排序 |
sort() | list.sort([key], [reverse]) | reverse和上边一样 | 对列表本身进行排序,会改变当前列表 |
打乱列表中元素的顺序
可以使用random包中的shuffle()函数:
from random import shuffle
a = [2, 3, 1, 5]
shuffle(a)
print(a)
结果是:[3, 1, 2, 5]
shuffle函数是将列表a本身进行打乱,无返回值。
可以使用list.reverse()方法:
a = [2, 3, 1, 5]
a.reverse()
print(a)
此方法同样无返回值,改变原列表中的元素顺序。
使用[::-1]切片反转:
a = [2, 3, 1, 5]
print(a[::-1])
切片是有返回值的