Я пытаюсь создать список сопрограмм, который может быть передан asyncio.gather ()
Однако я хочу присоединить аргументы к этим сопрограммам, когда я добавляю их в список.
Мой текущий метод, показанный ниже, использует functools.partial.К сожалению, asyncio.gather не принимает частичную функцию, что имеет смысл.
Для меня не имеет значения, как найти решение.
Пример кода:
async def test(arg1):
print(arg1)
statements = []
function = functools.partial(test, "hello world")
statements.append(function)
results = await asyncio.gather(*statements)
Так как мне прикрепить аргументы к функции, чтобы она все еще могла быть передана asyncio.gather?
* РЕДАКТИРОВАТЬ
Кажется, я был довольно глупым.
Мое решение было довольно простым, не используйте functools.partial и просто добавьте сопрограмму прямо в список.
Код:
async def test(arg1):
print(arg1)
async def main():
statements = []
statements.append(test("hello_world"))
results = await asyncio.gather(*statements)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())