Python задачи и вопросы
前往频道在 Telegram
Задачи и вопросы с собеседований по python разного уровня сложности По рекламе: @cyberJohnny
显示更多1 120
订阅者
无数据24 小时
-17 天
-230 天
帖子存档
Как в FastAPI (SQLAlchemy 2.0 async) корректно обеспечить «сеанс на запрос» с авто-rollback при исключении и гарантированным закрытием соединения?
👾 — Создать один глобальный AsyncSession и шарить его между хэндлерами
👍 — Использовать зависимость с yield
🥰 — Открывать/закрывать сессию вручную в каждом хэндлере try/except
⚡️ — Класть сессию в app.state на старте приложения и переиспользовать
Библиотека задач по Python
😭 Как не потратить недельный лимит AI-кодинга за три дня?
Разберём на вебинаре, как тратить меньше на AI-агентов — без потери качества кода.
🔘 Поговорим о том:
— когда дорогая модель действительно нужна, а когда хватит дешёвой;
— сколько стоит один прогон и куда уходят токены;
— какие задачи можно отдавать субагентам;
— как настроить маршрутизацию моделей;
— что проверять в AI-коде перед merge.
✏️ Покажем всё на конкретных цифрах и вживую: сравним расходы до и после.
⬇️ 18 сентября, 19:00 МСК
⬇️ 1,5 часа · бесплатно
⬇️ Арсений Харланов и Олег Лайок
💬 Пишите в комментариях, где упираетесь в лимиты и на что уходят деньги. Самые залайканные вопросы разберём на вебинаре.
🔗 Зарегистрироваться на вебинар (https://clc.to/lp0GfQ)
Неверный отчёт или неработающий конвейер данных не всегда становится следствием технической ошибки. Иногда проблема возникает раньше — когда команда неправильно поняла задачу бизнеса, не уточнила ограничения или пропустила скрытые требования.
15 сентября в 20:00 на открытом уроке курса «Аналитик DWH» разберёте, как собирать требования к аналитическим системам и превращать бизнес-задачи в понятную архитектуру данных.
На реальных примерах вы увидите, какие ошибки приводят к неработающим конвейерам и отчётам с неверными показателями. Поймёте, почему работа DWH-аналитика не ограничивается SQL и выбором инструментов, а начинается с точных вопросов и системного понимания задачи.
Во время практического упражнения вы попробуете сформулировать вопросы к представителям бизнеса, выявить скрытые требования и определить, какие сведения необходимо получить до проектирования системы.
После урока у вас останется памятка по сбору требований, которую можно использовать перед разработкой нового хранилища, отчёта или конвейера данных.
👉 Записаться: https://vk.cc/d1iHvu
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Один медленный SQL-запрос может задерживать обновление отчётов, увеличивать нагрузку на инфраструктуру и замедлять работу всей аналитической системы. При этом причина не всегда находится в самом запросе — проблема может быть в индексах, схеме данных, настройках СУБД или ресурсах сервера.
3 сентября в 20:00 на открытом уроке курса «Аналитик DWH» разберёте, как системно исследовать производительность баз данных и находить узкие места.
Вы узнаете, какие показатели помогают оценить состояние СУБД и как отличить нормальную нагрузку от проблемы. Рассмотрите основные причины замедления на разных уровнях — от неэффективного SQL и структуры таблиц до конфигурации базы данных и аппаратного обеспечения.
На практических примерах разберёте, как переписывать проблемные запросы, проектировать и настраивать индексы, а также выбирать инструменты для наблюдения и исследования производительности.
После урока вы сможете точнее определять причины замедления и выбирать способ оптимизации, который соответствует реальной проблеме.
👉 Зарегистрируйтесь https://vk.cc/d0NMst
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Сервис создаёт миллионы однотипных небольших объектов (несколько фиксированных полей). Память растёт, GC давит. Что изменить в моделях, чтобы существенно снизить footprint и ускорить доступ к атрибутам?
👾 — Отключить GC через gc.disable()
👍 — Хранить данные в dict вместо объектов
🥰 — Использовать slots или @dataclass(slots=True) для моделей
⚡️ — Увеличить sys.setrecursionlimit()
Библиотека задач по Python
Покупать новый курс каждый раз, когда меняется рабочая задача, — довольно странная механика. Нашли альтернативу 👇
Какое утверждение о системе зависимостей FastAPI корректно при использовании Depends, BackgroundTasks и ContextVar в асинхронном контексте?
👾 — Все зависимости в FastAPI создаются один раз при запуске приложения и переиспользуются между запросами, если они объявлены через Depends
👍 — Использование ContextVar внутри зависимости гарантирует корректное изолированное состояние на каждый HTTP-запрос, даже при высокой степени параллелизма
🥰 — BackgroundTasks могут быть объявлены внутри зависимости, но они не будут выполнены, если не проброшены явно в APIRouter
⚡️ — Асинхронные зависимости с yield (context managers) поддерживаются FastAPI только при использовании Python 3.12 и выше
Библиотека задач по Python
Разработчику нужен стабильный результат, DevOps — контроль инфраструктуры, техлиду — правила для всей команды. Собрали это в одном посте 👇
Uvicorn/FastAPI-сервис использует asyncio и сторонние библиотеки, под капотом создающие потоки. Для CPU-bound задач вы подключили multiprocessing, но периодически ловите подвисания/краши при старте воркеров. Какой способ старта процессов корректнее выбрать?
👾 — fork — самый быстрый, поэтому всегда лучший выбор на Linux
👍 — spawn — запуск чистого интерпретатора, безопасен при наличии потоков/мьютексов у родителя
🥰 — forkserver — ничего не меняет относительно потоков, просто сложнее
⚡️ — Любой — способы эквивалентны на Linux
Библиотека задач по Python
Есть ли в Python сборщик мусора, и, если есть, как он работает?
Стандартный интерпретатор использует несколько алгоритмов.
🧹 Подсчёт ссылок. Каждый объект в Python содержит внутренний счётчик ссылок. Когда он падает до нуля, это означает, что на объект больше нет ссылок, его можно удалить. Главный недостаток этого алгоритма — не умеет определять циклические ссылки.
🧹 Алгоритм поиска циклов. Реализован в модуле gc и активируется время от времени, а не постоянно. Если коротко, этот алгоритм периодически ищет объекты, которые ссылаются только друг на друга и не доступны извне. Объекты, признанные недостижимыми, удаляются.
Также стоит добавить, что циклический сборщик мусора делит объекты на три поколения в зависимости от того, как долго они существуют в памяти. Новые объекты помещаются в первое поколение. Если они сохраняются после очередного процесса сбора мусора, то перемещаются в следующее по старшинству поколение. Объекты в более старших поколениях проверяются реже.
Библиотека задач по Python
Вы обрабатываете большие массивы числовых данных в Python, и профилирование показывает, что большинство времени тратится на циклы for со встроенными типами. Какой подход наиболее правильный для оптимизации?
👾 — Разбить массивы на списки поменьше и обрабатывать их по частям
👍 — Использовать специализированные библиотеки (например, NumPy), которые выполняют векторные операции вне GIL
🥰 — Переписать цикл на вложенные list comprehension
⚡️ — Принудительно запускать gc.collect() после каждой итерации
Библиотека задач по Python
Курс для тех, кто хочет перестать просто «пользоваться AI» и начать выстраивать с ним нормальный процесс разработки 🥳
Что означает RPO?
👾 — Максимально допустимая длительность простоя
👍 — Цель по времени восстановления сервиса
🥰 — Максимально допустимая потеря данных во времени
⚡️ — Среднее время до отказа
Библиотека задач по Python
Как поддерживать «прибавить x на [l,r]» и «минимум на [l,r]» за O(log n)?
👾 — Префиксные суммы
👍 — Дерево Фенвика
🥰 — Сегментное дерево с ленивой пропагацией
⚡️ — Несортированная куча
Библиотека задач по Python
🔥 Курс «Разработка ИИ-агентов» стартовал, но вы еще успеваете присоединиться!
Мы только начали, а первый практический воркшоп пройдет только 23 июля. До этого времени вы спокойно успеете изучить материалы и нагнать группу.
💼 Главная фишка: финальный проект в портфолио:
В финальном проекте вы сможете выбрать один из двух вариантов: реализовать свою идею или решить задачу от партнера курса — крупной российской финтех-компании. Вы будете работать с датасетом, построенным по реальным сценариям, получите бизнес-контекст и продовые ограничения. В результате соберете AI-агента, который станет сильным проектом для портфолио.
🎁 Упомяните менеджеру специальное предложение «3 курса по цене 1»: Берете VIP-тариф — получаете курс «Разработка ИИ-агентов», хардкорный «AgentOps» и ещё один курс на выбор. Выгода 129.000 ₽!
Двери потока вот-вот закроются окончательно. Успейте забрать стек курсов и начать работу над реальным проектом
🔗 Занять место и забрать 3 курса (https://clc.to/o7ZCfQ)
🔥 Стартуем СЕГОДНЯ! Новый поток курса «Разработка ИИ-агентов» открыт
По этому поводу мы решили выложить закрытую запись одного из уроков из программы. Найти её в поиске YouTube нельзя — она доступна только по ссылке и всем, кто будет на курсе.
Внутри глубокий разбор LLM от Алексея Яндутова (Senior ML-инженер, развивал ответы «Алисы» и «Нейро» в Яндексе). Учимся получать точный результат без галлюцинаций.
Что внутри урока:
- Устройство LLM.
- Рабочие шаблоны промптов (Persona, Chain-of-Thought и др.).
- Разбор реального кейса Яндекса. Как автоматизировать разметку, обойти качество людей на 5% и срезать косты на 60%.
После просмотра вы поймете, когда хватает промпт-инжиниринга, а когда нужен RAG или fine-tuning.
👉Смотреть закрытый урок на YouTube (https://clc.to/BSABpQ)
Понравился урок? Переходите на новый уровень! Оставляйте заявку на курс, чтобы научиться проектировать надежные автономные системы. Обучение началось, но вы еще успеваете присоединиться.
🔗 Занять место на курсе (https://clc.to/s8QztA)
Что выведет код сверху?
👾 — TypeError
👍 — apple banana
🥰 — 4 3
⚡️ — {"apple": 4, "banana": 3} {"apple": 4, "banana": 3}
Библиотека задач по Python
🚀 Уже завтра стартует новый поток курса «ИИ-агенты»!
Мы собрали мощнейший состав преподавателей. Учить вас проектировать архитектуру и собирать продакшн-агентов будут инженеры и исследователи из топовых IT-компаний.
Старт уже завтра!
Сомневаетесь, подойдет ли вам программа и подача? Начните с бесплатного демо-урока!
Всего за 2 часа вы заглянете под капот ИИ-агента, поймете, чем мышление модели отличается от ее ответа, и научите систему чинить собственный код. Это идеальный способ протестировать нашу платформу перед покупкой.
🔗 Пройти демо-урок и занять место на курсе (https://clc.to/BsVWCw)
