У меня есть функция, которая вызывается из многопроцессорного пула pool.map с несколькими аргументами.Карточка пула многопроцессорности Python с несколькими аргументами
from multiprocessing import Pool
import time
def printed(num,num2):
print 'here now '
return num
class A(object):
def __init__(self):
self.pool = Pool(8)
def callme(self):
print self.pool.map(printed,(1,2),(3,4))
if __name__ == '__main__':
aa = A()
aa.callme()
, но это дает мне следующее сообщение об ошибке
TypeError: printed() takes exactly 2 arguments (1 given)
Я попытался решения от других ответов здесь, но они не работают для меня. Как я решить ее, и что является причиной этой проблемы (я не получил рассол POV)
помечена как дубликат после более чем 2-х лет. Однако вопрос был в контексте использования с рассолом. Решение заключалось в том, чтобы изменить определение печатного метода 'def print (* args):' как указано в ответе. –