Python ThreadPoolExecutor提交语法

2024-03-29 06:57:43 发布

您现在位置:Python中文网/ 问答频道 /正文

在阅读有关Python ThreadPoolExecutors的内容时,我发现这是一个非常有用的页面:

https://pymotw.com/3/concurrent.futures/

大部分是我在阅读和尝试了一些例子后理解的。然而,有一个片段我迷路了。在标题为:以任何顺序等待任务的部分中

这是:

wait_for = [
    ex.submit(task, i)
    for i in range(5, 0, -1)
]

我能看到它在做什么,但我不明白它为什么起作用。为什么例如提交在“for”循环之前?我以前没有见过这种Python语法,到目前为止也没有发现任何其他类似的例子。你知道吗


Tags: httpscom标题内容for顺序页面concurrent
2条回答

此代码与此类似:

wait_for = []
for i in range(5, 0, -1):
    wait_for.append(ex.submit(task, i))

循环结束后,如果线程池的容量超过5,则wait_for中有5个对象。你知道吗

这是一个紧凑地创建列表的list comprehension。它由一个产生列表项的表达式、一个或多个for循环(为表达式提供基础数据)和一个if表达式(可选)组成。你知道吗

相关问题 更多 >