Back to questions
Junior — Middle
55
Мог бы ты объяснить, что такое сопрограммы и как они работают?
Answer from AI
sobes.tech AI
Сопрограммы (coroutines) — это специальные функции, которые могут приостанавливать своё выполнение и позже возобновлять его, сохраняя своё состояние между вызовами. В Python сопрограммы часто используются для асинхронного программирования и позволяют писать код, который не блокирует выполнение, ожидая результата.
В Python сопрограммы создаются с помощью ключевого слова async def и управляются с помощью await. При вызове сопрограммы она возвращает объект, который можно запустить в цикле событий.
Пример простой сопрограммы:
import asyncio
async def say_hello():
print("Hello")
await asyncio.sleep(1) # приостанавливает выполнение на 1 секунду
print("World")
asyncio.run(say_hello())
Здесь await позволяет приостановить выполнение функции, не блокируя весь поток, и возобновить его после завершения асинхронной операции.