Python保存序列最终的N个原素

文中为Python CookBook一书的阅读文章手记。

Python中怎样纪录当今的访问纪录呢?完成方式自然有许多种。例如可使用Python目录list数据信息构造,仅仅每一次在目录首尾实际操作数据信息会较为不便。下边有一种更便捷的方式,应用collections控制模块中的deque数据信息构造。

deque应用详细介绍

应用deque(maxlen=N)结构涵数会在建一个固定不动尺寸的序列,当新的原素添加而且这一序列已满时,最开始加上的原素会全自动清除。编码实例以下:

from collections import deque
q = deque(maxlen=3)
q.append(1)
q.extend([x for x in range(2, 10)])
# 結果为:deque([7, 8, 9], maxlen=3)
print(q)
q.appendleft(10)
# 結果为:deque([10, 7, 8], maxlen=3)
print(q)
# 結果为:10
print(q.popleft())

虽然还可以在目录上完成提升、删掉等实际操作。可是应用deque序列计划方案会更为雅致而且特性更强。deque类能够在一切只必须一个简易序列的数据信息构造场所应用。假如不设定较大序列尺寸,便会获得一个无尽尺寸的序列,能够在该序列的两边实行加上和弹出来原素实际操作。