collections
Counter()
统计列表中重复项出现的次数
1 | from collections import Counter |
deque
双边队列(double-ended queue),具有队列和栈的性质,在列表(list)的基础上增加了移动、旋转和增删等
1 | from collections import deque |
如果指定了参数maxlen
,则会生成固定长度的队列;插入元素时,若队列已满,
- 从右侧插入,会“挤掉”最左侧的元素
- 从左侧插入,会“挤掉”最右侧的元素
1 | d = deque(maxlen=3) |
.append()
在队列右侧添加元素
.appendleft()
在队列左侧添加元素
1 |
.count()
统计队列中某元素的个数
1 |
.extend()
在队列右边依次添加所有元素
1 |
.extendleft()
在队列左侧依次添加所有元素
1 | d = deque(['a', 'b', 'c']) |
.pop()
从队列的右侧删除(取出)一个元素
1 |
.popleft()
从队列的左侧删除(取出)一个元素
1 |
.remove()
将队列中的某元素删除
1 |
.reverse()
将队列倒序
1 |
.rotate()
.rotate(n)
- $n > 0$:将队列最右边的n个数据,移到队列的左边
- $n < 0$:将队列最左边的n个数据,移到队列的右边
1 | d = deque(range(10)) |