gpt4 book ai didi

Python gevent : pass multiple arguments to function called via pool. 贴图

转载 作者:行者123 更新时间:2023-11-28 22:58:49 24 4
gpt4 key购买 nike

如何将多个参数传递给通过 pool.map 调用的函数?

我的代码:

import gevent
from gevent.pool import Pool

def process(param1, param2):
return "dosomething"

pool = Pool(10)
jobs = [('arg1a', 'arg1b'), ('arg2a', 'arg2b')]

# should pass arguments so that it results in these calls
# process(param1=arg1a, param2=arg1b)
# process(param1=arg2a, param2=arg2b)
results = pool.map(process, jobs) # does not work

最佳答案

gevent.Pool.map 方法似乎只允许将单个项目作为参数传递给您提供的函数。但是,您可以编写函数代码以非常轻松地解压缩其参数:

def process(params):
param1, param2 = params
...

或者您可以在调用 pool.map 时使用 lambda 表达式处理参数解包:

results = pool.map(lambda args: process(*args), jobs)

关于Python gevent : pass multiple arguments to function called via pool. 贴图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13490346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com