Курс 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. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  2. Сортировка и разворот списка
  3. Генераторы списков
  4. Асинхронный код в Python
  5. Переопределение метода delitem в Python
  6. Игра «Виселица» на Python
  7. Работа с коллекциями Python
  8. Подписка на каналы разработчиков
  9. Асинхронное выполнение задач в процессах
  10. Структуры данных в Python
  11. Изменение IP-адреса в Python
  12. Измерение времени выполнения
  13. F-строки в Python
  14. Измерение времени выполнения с помощью time
  15. Проверка вхождения подстроки
  16. Удаление знаков препинания в Python
  17. Объединение словарей в Python
  18. Работа с итераторами в Python
  19. Функции map() и reduce() в Python
  20. Форматирование строк в Python
  21. Удаление элемента из списка в Python
  22. Обновление множества в Python
  23. Комментарии в Python
  24. Экспорт данных в файл.
  25. Antigravity модуль
  26. Возврат нескольких значений
  27. Декоратор total_ordering для сравнения объектов
  28. Цикл for в Python
  29. Проверка условий в Python
  30. Конкатенация строк с помощью join()
  31. Создание словаря и множества
  32. Визуализация пропусков данных
  33. Работа с библиотекой requests
  34. Работа с контекстным менеджером Pool
  35. Создание циклической ссылки
  36. Функциональное программирование.
  37. Уникальные значения из списка
  38. Оператор объединения словарей
  39. Модуль subprocess: запуск внешних команд
  40. Измерение времени выполнения кода
  41. Проверка подстроки в строке
  42. Поиск повторов в списке
  43. Пропуск начальных строк с помощью dropwhile()
  44. Списки в Python: синтаксис представления
  45. split() — разделение строки
  46. Пересечение списков с использованием множеств

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