【发布时间】:2011-10-10 17:51:00
【问题描述】:
concurrent.futures.Executor.map 采用可变数量的可迭代对象,从中调用给定的函数。 如果我有一个生成元组的生成器通常在原地解包,我应该怎么称呼它?
以下内容不起作用,因为每个生成的元组都作为 map 的不同参数给出:
args = ((a, b) for (a, b) in c)
for result in executor.map(f, *args):
pass
如果没有生成器,映射所需的参数可能如下所示:
executor.map(
f,
(i[0] for i in args),
(i[1] for i in args),
...,
(i[N] for i in args),
)
【问题讨论】:
-
我没有得到你想要的。在您最近的编辑中,没有生成器的示例不起作用,因为生成器上的每个元素只有两个元素,N 的值是多少?
-
@vz0:N是
args生成的元组中的项目数。
标签: python concurrency iterator future map-function