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

Асинхронное программирование — это подход, который позволяет выполнять несколько задач одновременно, не блокируя основной поток выполнения. В Python для реализации асинхронности используется модуль asyncio, который позволяет создавать асинхронные функции и использовать ключевые слова async/await.

Для создания асинхронной функции необходимо использовать ключевое слово async перед определением функции. Внутри асинхронной функции можно использовать ключевое слово await для ожидания выполнения другой асинхронной операции. Это позволяет эффективно использовать ресурсы процессора и не блокировать выполнение других задач.


import asyncio

async def my_task():
    await asyncio.sleep(1)
    print("Task completed")

async def main():
    task1 = asyncio.create_task(my_task())
    task2 = asyncio.create_task(my_task())

    await task1
    await task2

asyncio.run(main())

В данном примере создается две асинхронные задачи my_task(), которые выполняются параллельно. Функция main() запускает эти задачи с помощью asyncio.create_task() и ожидает их завершения с помощью ключевого слова await. Таким образом, задачи выполняются одновременно.

Важно помнить, что асинхронное программирование не всегда делает код быстрее, но может повысить его эффективность за счет параллельного выполнения задач. При этом необходимо правильно управлять асинхронными функциями и избегать блокировок, чтобы избежать проблем с синхронизацией данных.

Твои коллеги будут рады, поделись в

Автор урока

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

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

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

  1. Разрешение имен в Python
  2. Python Calendar Usage
  3. Получение текущей даты и времени
  4. Константы в модуле cmath
  5. Декораторы в Python
  6. Вывод баннеров
  7. Игра «Камень, ножницы, бумага» — Python
  8. Методы HTTP запросов в Flask
  9. Отладка в Python
  10. Объединение списков в Python.
  11. Комплексные числа в Python
  12. Построение графиков в Matplotlib
  13. Работа с библиотекой xkcd
  14. Нарезка списков в Python
  15. Установка виртуального окружения Python
  16. Управление мышью и клавиатурой с Pyautogui
  17. Объединение коллекций в Python
  18. Присоединение элементов коллекции
  19. Модуль xkcd: добавление юмора в Python
  20. Python Поверхностное Копирование
  21. Работа с пакетами
  22. Метод repr() в Python
  23. Сортировка данных с лямбда-функциями
  24. Основы работы со строками в Python
  25. Изменение переменной в Python: nonlocal
  26. Поиск уникальных элементов строкой в Python
  27. Виртуальное окружение Python
  28. Хешируемые ключи в Python
  29. Установка и использование модуля Wikipedia
  30. Удаление элементов по срезу
  31. Python reversed() vs срез[::-1]
  32. Python enumerate() для работы с индексами
  33. Сумма элементов списка
  34. Итерации в Python
  35. Обработка ошибок в JSON данных
  36. Отрицательные индексы списков
  37. Оператор «моржа» (Walrus Operator)
  38. Логические значения в Python
  39. Возвращение нескольких значений
  40. Docstring в Python
  41. Хеши в Python
  42. Проверка существования переменной с оператором :=
  43. Метод setdefault() в Python
  44. Модуль functools в Python
  45. Работа с часовыми поясами в Python
  46. Функция enumerate в Python

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