Начиная с Python 3.7 асинхронные сопрограммы можно легко запускать с помощью метода asyncio.run()
:
1>>> import asyncio
2
3>>> async def main():
4... print('hello')
5... await asyncio.sleep(1)
6... print('world')
7
8>>> asyncio.run(main())
9hello
10world
Как вы знаете, в Python 3.6 код, делающий то же самое, выглядел так:
1>>> import asyncio
2
3>>> async def main():
4... print('hello')
5... await asyncio.sleep(1)
6... print('world')
7
8>>> loop = asyncio.get_event_loop()
9>>> loop.run_until_complete(main())
10hello
11world
12>>> loop.close()
Еще один шаг навстречу асинхронному будущему.