Курс Python → Асинхронное программирование с asyncio

Модуль asyncio в Python предоставляет возможность создания асинхронных программ, что позволяет выполнять несколько задач параллельно и эффективно управлять асинхронными операциями. Одним из ключевых элементов asyncio является использование корутин (coroutines), которые позволяют создавать асинхронные функции и выполнять асинхронные операции.

Для начала работы с asyncio, необходимо определить асинхронные корутины. В нашем примере мы создаем корутину под названием my_coroutine, которая выполняет асинхронную операцию — в данном случае, ожидание 1 секунды. Корутины позволяют нам выполнять задачи асинхронно, не блокируя основной поток выполнения программы.


import asyncio

async def my_coroutine():
    await asyncio.sleep(1)
    print("Async operation completed")

Далее мы определяем асинхронную функцию main, которая вызывает две корутины одновременно с помощью функции asyncio.gather. Это позволяет нам запустить несколько асинхронных операций параллельно и дождаться их завершения. В данном случае, main вызывает my_coroutine дважды, и обе операции выполняются одновременно.


async def main():
    await asyncio.gather(my_coroutine(), my_coroutine())

Наконец, для запуска основной функции main мы используем функцию asyncio.run. Она запускает асинхронную программу и ожидает ее завершения. Таким образом, мы можем эффективно управлять асинхронными операциями и выполнять параллельные задачи с помощью модуля asyncio в Python.


if __name__ == "__main__":
    asyncio.run(main())
Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Метод __complex__ в Python
  2. Магические методы в Python
  3. Перегрузка операторов в Python
  4. Работа с географическими данными в Python
  5. Проверка вхождения подстроки
  6. Метод rename() для переименования файлов и каталогов
  7. Цикл for в Python
  8. Просмотр файла в Jupyter Noteboo
  9. Измерение времени выполнения
  10. Генераторные функции в Python
  11. Тестирование модели в PyTorch
  12. Генераторы по генератору
  13. Реализация операции -= для пользовательского класса
  14. Локальные переменные.
  15. Lambda-функция в Python: использование с map() и sum()
  16. Установка random seed в Python
  17. Распаковка значений в Python
  18. Применение функции к списку
  19. Установка библиотек в Python
  20. split() без разделителя
  21. Модуль sys: основы
  22. Печать в одной строке
  23. Распаковка аргументов в Python
  24. Операторы объединения в Python 3.9
  25. Установка и использование emoji
  26. Работа с типами данных в Python с помощью pydantic.
  27. Удаление элемента из списка в Python
  28. Капитализация строк
  29. Безопасный доступ к значениям словаря
  30. Оператор морж в Python 3.8
  31. Преобразование данных в Python
  32. Обработка ошибок ввода данных
  33. Блок else в обработке исключений
  34. Основы работы со списками
  35. Работа с комплексными числами
  36. Сравнение объектов в Python
  37. Замер времени выполнения кода
  38. Работа с очередями в Python
  39. Конкатенация строк в Python
  40. Метод splitlines() для разделения строк
  41. Создание виртуальной среды
  42. Работа с zip()
  43. Bootle — простой веб-фреймворк
  44. Анализ текста на русском языке с помощью Pymystem3
  45. Функции в Python: создание и вызов
  46. Стать Python-разработчиком
  47. Декораторы в Python

Marketello читают маркетологи из крутых компаний