python - 将列表项放入队列中

gau*_*ain 7 python

我有以下代码:

self.queryQ = Queue.Queue()
queries = self.getQueries()  # returns list

for query in queries:
  self.queryQ.put(query)
Run Code Online (Sandbox Code Playgroud)

有更好的方法来代码吗?请提供指示.

Cam*_*ron 19

好吧,你可以使用map(docs):

map(self.queryQ.put, self.getQueries())
Run Code Online (Sandbox Code Playgroud)


dev*_*drc 8

使用列表理解,它更快.

list = [self.queryQ.put(query) for query in queries]
Run Code Online (Sandbox Code Playgroud)

  • 除了任何性能优势之外,这隐藏了这里发生的事情的本质.看起来你正在给出一些对象的列表. (3认同)
  • 证据表明它更快? (3认同)
  • 该链接似乎表明 _write_ 更有效,但我没有发现任何内容表明通过理解方法的时间复杂度有任何不同。 (2认同)