Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 标准库中还有其他队列吗?_Python_Queue_Producer Consumer_Thunk - Fatal编程技术网

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