Пропуски Junior asyncio обновлено
Конкурентный запуск корутин
Вопрос
Допишите код так, чтобы три запроса шли одновременно, а результаты собрались в список.
import asyncio
async def main(urls):
results = __(1)__ asyncio.__(2)__(*(fetch(u) for u in urls))
return results
asyncio.__(3)__(main(urls))
Попробуйте сами
Заполните пропуски по номерам.
1
2
3
Показать ответ и разбор
Коротко
asyncio.gather принимает корутины, оборачивает их в задачи и ждёт все, результат в порядке аргументов. Его нужно await-ить.
Что в пропусках
1
await
2
gather
3
run
Разбор
asyncio.gather принимает корутины, оборачивает их в задачи и ждёт все, результат в порядке аргументов. Его нужно await-ить. Точка входа программы asyncio.run(main(...)).
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.