Вот простой пример использования аргументов ключевого слова в вызове функции. Ничего особенного.
def foo(arg1,arg2, **args):
print arg1, arg2
print (args)
print args['x']
args ={'x':2, 'y':3}
foo(1,2,**args)
Что печатает, как и ожидалось:
1 2
{'y': 3, 'x': 2}
2
Я пытаюсь передать аргументы ключевого слова того же стиля многопроцессорной задаче, но использование ** в списке аргументов является синтаксической ошибкой. Я знаю, что моя функция stretch() будет принимать два позиционных аргумента и n аргументов ключевого слова.
pool = [multiprocessing.Process(target=stretch, args= (shared_arr,slice(i, i+step),**args)) for i in range (0, y, step)]
Можно ли передать аргументы ключевого слова в multiprocessing.Process? Если да, то как? Если нет, то почему?
kwargs
kwargs, а неargs
. - person kev   schedule 01.08.2016