Python 标准库中还有其他队列吗?
我想排队Python 标准库中还有其他队列吗?,python,queue,producer-consumer,thunk,Python,Queue,Producer Consumer,Thunk,我想排队 lambda : Popen(.....) 稍后再打电话/等待。 然后在队列中添加更多暂停的Popens, 然后再吃一次,以此类推 主队列模块非常关心同步,这使得 api在某些地方感觉有点奇怪。我不关心同步(单线程) 程序中,Popen只执行其工作并在出错时抛出异常,而不会影响 以任何重要方式(它们生成文件)创建环境 我是否应该使用一个我以后添加到其中的生成器。 如果是这样的话,向生成器添加项目的好方法是什么 gena = itertools.chain(gena,[item))
lambda : Popen(.....)
稍后再打电话/等待。
然后在队列中添加更多暂停的Popens,
然后再吃一次,以此类推
主队列模块非常关心同步,这使得
api在某些地方感觉有点奇怪。我不关心同步(单线程)
程序中,Popen只执行其工作并在出错时抛出异常,而不会影响
以任何重要方式(它们生成文件)创建环境
我是否应该使用一个我以后添加到其中的生成器。
如果是这样的话,向生成器添加项目的好方法是什么
gena = itertools.chain(gena,[item))
每一次似乎都是浪费。是的,你可以使用deque(collections.deque),这是一个可以在两端有效推送和弹出的列表。您也可以使用列表,而不必担心效率低下,因为这可能无关紧要。因为您不关心多线程,所以逻辑选择似乎是。您可以使用:
Good ahnswer-I vill Good ahnswer,问题:否决票是因为描述不好还是缺乏研究。Google搜索
Python队列
返回所需答案作为第二个条目,就在队列类之后。在点击c表中的heapq和queue后,在图书馆参考手册中搜索queue一词内容,在“收藏”部分找到deque。我尝试过,但错过了,可能是因为我太累了。我记得类似“也可以使用列表作为队列”的内容,但在不久前阅读时使用了它,但当我搜索文档时,我再也找不到它。现在我在谷歌上查看第三个链接(第二个顶级链接)确实指向那一段。
from collections import deque
queue = deque()
queue.append(new) # append
current = queue.popleft() # first item