Sobes.tech
Back to questions
Junior — Middle
62

Как реализовать асинхронное выполнение операций с помощью конструкции async/await?

Companies where asked
Soft Media Group
Фабрика РешенияФабрика Решения

Answer from AI

sobes.tech AI

В Python для асинхронного выполнения операций используется ключевое слово async для объявления асинхронной функции и await для ожидания результата асинхронной операции внутри такой функции. Это позволяет не блокировать основной поток выполнения, а переключаться между задачами, когда одна из них ожидает завершения операции (например, ввода-вывода).

Пример:

import asyncio

async def fetch_data():
    print("Начинаю загрузку данных...")
    await asyncio.sleep(2)  # имитация асинхронной операции
    print("Данные загружены")
    return {'data': 123}

async def main():
    result = await fetch_data()
    print(f"Результат: {result}")

asyncio.run(main())

Здесь fetch_data — асинхронная функция, которая "спит" 2 секунды, не блокируя выполнение. В main мы вызываем её с помощью await, чтобы дождаться результата. asyncio.run запускает главный цикл событий.