Встречается на собеседованиях • сегодня
Работал ли с asyncio
Да, работал с asyncio — это стандартная библиотека Python для асинхронного программирования. Основные концепции: корутины (async/await), цикл событий (event loop), задачи (Task) и футуры (Future).
Пример простого HTTP-запроса с aiohttp:
python
import aiohttp
import asyncio
async def fetch(url):
async with aiohttp.ClientSession() as session:
async with session.get(url) as response:
return await response.text()
async def main():
html = await fetch("https://example.com")
print(html[:100]) # первые 100 символов
asyncio.run(main())
text
Ключевые моменты:
- `async def` — объявление корутины.
- `await` — приостановка выполнения до завершения операции.
- `asyncio.run()` — запуск цикла событий.
Нюансы:
- Блокирующий код (например, `time.sleep`) ломает асинхронность — используй `asyncio.sleep`.
- Для конкурентности применяй `asyncio.gather()`.
- Ошибки в корутинах нужно обрабатывать внутри или через `try/except`.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы