Что такое async/await в Python
Python
Senior
Без компании
Что такое async/await в Python
Ответы
`async/await` — это синтаксис для работы с асинхронным кодом в Python, позволяющий писать неблокирующий код, который выглядит как синхронный.
- **`async`** объявляет функцию корутиной (асинхронной функцией).
- **`await`** приостанавливает выполнение корутины, пока ожидаемая операция (обычно I/O) не завершится.
Пример:
```
import asyncio
async def fetch_data():
print("Начало загрузки")
await asyncio.sleep(2) # Имитация долгой операции (например, HTTP-запроса)
print("Данные загружены")
return "Результат"
async def main():
task = asyncio.create_task(fetch_data())
print("Делаем что-то параллельно...")
result = await task
print(f"Получено: {result}")
asyncio.run(main())
```
**Особенности:**
- Работает только внутри `async`-функций.
- Требует `asyncio` или другой совместимой event-loop.
- Не делает код быстрее сам по себе, но эффективнее использует время при I/O-bound задачах.