Курс 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. Доступ к локальным переменным
  2. Работа с пакетами
  3. Пересечение списков с использованием множеств
  4. Нахождение отличий в списках
  5. Замер времени выполнения кода
  6. Python: динамическая типизация и проверка типов
  7. Работа со строками в Python
  8. Оператор zip в Python
  9. Работа с модулем Calendar
  10. Генерация резюме в Gensim
  11. Атрибуты объекта в Python
  12. Капитализация строк
  13. Метод __call__ в Python
  14. Импорт с альтернативным именем
  15. Пустой оператор pass в Python
  16. kwargs в Python
  17. Форматирование чисел в Python
  18. Объединение списков с помощью zip
  19. Декоратор проверки активности
  20. Поиск подстроки в строке
  21. Работа с YAML в Python
  22. Python: Фильтрация списков с помощью filter()
  23. Метод rpow в Python
  24. Обновление множества в Python
  25. Функция enumerate в Python
  26. Применение функции к каждому элементу списка
  27. Безопасные SQL-запросы в Python 3.11
  28. Подсказки типов в Python
  29. Повторение элементов в Python
  30. Открытие и запись файлов
  31. Декоратор для группы пользователей в Django
  32. Удаление дубликатов из списка
  33. Mad Libs Generator
  34. Установка и обучение ChatterBot
  35. Уникальные значения из списка
  36. Работа со строками в Python
  37. Метод clear для коллекций
  38. Измерение времени выполнения кода
  39. Печать календаря в Python
  40. Использование обратной косой черты в f-строках
  41. Проверка подстроки в строке с помощью in
  42. Создание тестовых данных с Faker
  43. Сравнение def и lambda функций в Python
  44. Использование модуля __future__
  45. Проекты на Python

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