python 列表之队列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 列表之队列相关的知识,希望对你有一定的参考价值。

列表实现队列操作(FIFO),可以使用标准库里的 collections.deque,deque是double-ended quene的缩写,双端队列的意思,它可以实现从队列头部快速增加和取出对象。

>>> from collections import deque
>>> queue = deque(["Eric", "John", "Michael"])
>>> queue.append("Terry")           # Terry arrives
>>> queue.append("Graham")          # Graham arrives
>>> queue.popleft()                 # The first to arrive now leaves
Eric
>>> queue.popleft()                 # The second to arrive now leaves
John
>>> queue                           # Remaining queue in order of arrival
deque([Michael, Terry, Graham])

deque用rotate实现跑马灯操作,转自http://www.zlovezl.cn/articles/collections-in-python/

# -*- coding: utf-8 -*-
"""
下面这个是一个有趣的例子,主要使用了deque的rotate方法来实现了一个无限循环
的加载动画
"""
import sys
import time
from collections import deque

fancy_loading = deque(‘>--------------------‘)

while True:
    print ‘\r%s‘ % ‘‘.join(fancy_loading),
    fancy_loading.rotate(1)
    sys.stdout.flush()
    time.sleep(0.08)

  

以上是关于python 列表之队列的主要内容,如果未能解决你的问题,请参考以下文章

perl中的队列

Python代码阅读(第26篇):将列表映射成字典

Python代码阅读(第25篇):将多行字符串拆分成列表

Python代码阅读(第40篇):通过两个列表生成字典

Python代码阅读(第13篇):检测列表中的元素是否都一样

使用 Python 列表作为队列的效率