在使用python list的时候,我们可以用slice的形式去操作list的元素,但是这种操作的时间复杂度是O(n),在很多场景下我们不能接受。比如说我们想迭代的扔掉list的第一个元素,很简单的就是l = l[1:],但是这个操作的开销是很大的,除了用一个queue.Queue,或者collections.deque,我们不如直接用list底层内置的方法去进行操作,这种都是经过python底层优化的。像上面的这个操作我们直接l.pop(0)即可。
下面列举了关于list元素操作的方法
- list.append(x):在list的末尾添加一个元素x。
- list.clear():清空list中的所有元素。
- list.copy():返回list的一个浅拷贝。
- list.count(x):返回list中x出现的次数。
- list.extend(iterable):在list的末尾添加iterable中的所有元素。
- list.index(x[, start[, end]]):返回list中第一个值等于x的元素的索引,如果没有找到则抛出ValueError。start和end是可选参数,用于限制搜索范围。
- list.insert(i, x):在指定位置i插入一个元素x。
- list.pop([i]):移除并返回list中指定位置i的元素,如果没有指定i,则移除并返回最后一个元素。
- list.remove(x):移除list中第一个值等于x的元素,如果没有找到则抛出ValueError。
- list.reverse():反转list中的元素顺序。
- list.sort(*, key=None, reverse=False):对list中的元素进行排序,key和reverse是可选参数,用于自定义排序规则。