Python задачи и вопросы
1.27K subscribers
413 photos
2 videos
1 file
164 links
Задачи и вопросы с собеседований по python разного уровня сложности

По рекламе: @cyberJohnny
Download Telegram
Какое утверждение верно для работы с замыканиями и областями видимости в Python при использовании nonlocal и global?

👾 — nonlocal и global изменяют значение переменной только в момент объявления функции, а не при выполнении
👍 — nonlocal ищет переменную в ближайшей внешней области видимости, не включая глобальную, и изменяет её по ссылке
🥰 — global и nonlocal идентичны в поведении, но nonlocal можно использовать только внутри вложенных функций
⚡️ — Если переменная помечена как nonlocal, Python создаёт новую переменную в замыкании, не затрагивая внешнюю

Библиотека задач по Python
Что выведет код?

👾 — 4
👍 — 9
🥰 — 10
⚡️ — 15

Библиотека задач по Python
👍1
Что выведет код сверху?

👾 — 0 1
👍 — 0
🥰 — 1

Библиотека задач по Python
👍2
Что выведет код сверху?

👾 — 3
👍 — 3.5
🥰 — Error

Библиотека задач по Python
Какой будет вывод следующего фрагмента кода?

s = {1, 2, 3, 3, 2, 4, 5, 5}
print(s)

👾 — {1, 2, 3, 3, 2, 4, 5, 5}
👍 — {1, 2, 3, 4, 5}
🥰 — None
⚡️ — {1, 5}

Библиотека задач по Python
👍2
✍🏻 Что такое фабрика декораторов?

Фабрика декораторов — это особая разновидность функции высшего порядка, которая возвращает декоратор вместо прямого результата. Главное отличие фабрики декораторов от обычного декоратора в том, что она принимает аргументы, которые могут конфигурировать логику декоратора.

Например, фабрика может принимать имя лог-файла, в который будет производиться запись при вызове декорируемой функции. Или уровень логирования вместо простой записи всех вызовов.
Такой подход позволяет создавать переиспользуемые и гибко настраиваемые декораторы для решения разных задач.

Главные преимущества фабрик декораторов — это возможность абстрагироваться от конкретики реализации, избежать дублирования кода и создавать интуитивный API для декораторов с настройками.

Библиотека задач по Python
👍1
Что выведет код сверху?

👾 — True
👍 — False
🥰 — Error
⚡️ — Другое

Библиотека задач по Python
Почему Flask называют микрофреймворком?

Flask называют «микро», поскольку его основной набор функций относительно ограничен: маршрутизация, обработка запросов и модули разработки — вот и всё, что есть в нём. Многие возможности, такие как ORM, кэширование и аутентификация, были доступны в качестве дополнительных расширений, но конкурирующие фреймворки (например, Django) включали их по умолчанию. Архитектура «небольшое ядро + расширения» делает его «микро-» фреймворком, с которым гораздо проще начать работать и масштабировать.
(https://t.iss.one/py_interview_lib)Библиотека задач по Python
🔥 Последняя неделя, чтобы забрать курс по AI-агентам по старой цене!

Пока вы тестируете Copilot, другие уже учатся строить AI-агентов, которые реально работают на бизнес. Хватит отставать!

Наш курс — это концентрат практики по LangChain и RAG. Улучшенная версия, доработанная по отзывам первого потока.

📆 Старт — 15 сентября.

💸 Цена 49 000 ₽ — только до 24 августа.

👉 Зафиксировать цену (https://clc.to/lSGDew)
Что выведет код?

👾 — 0
👍 — -1
🥰 — -2
⚡️ — -4
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Вы работаете с высоконагруженным Python-сервисом. При профилировании заметили, что использование list приводит к избыточным копированиям данных и росту потребления памяти. Какой подход будет наиболее правильным для оптимизации?

👾 — Использовать tuple вместо list, так как они быстрее и занимают меньше памяти
👍 — Применить генераторы и итераторы (yield, generator expressions), чтобы обрабатывать данные лениво
🥰 — Хранить данные в глобальной переменной, чтобы избежать повторных аллокаций
⚡️ — Переписать часть логики на Cython, чтобы ускорить операции с массивами
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
⚡️ Бесплатный вебинар — прогнозируем цены и не сходим с ума

21 августа в 19:00 МСК будет бесплатный вебинар (https://clc.to/N-xGWA) с Марией Жаровой — экспертом в ML и Data Science.

Тема:
«Введение в машинное обучение: как спрогнозировать стоимость недвижимости».

Подробности рассказываю в гс выше — включай, чтобы не пропустить.
☝️ Один мудрый тимлид дал двум своим разработчикам по «таланту» — мощной, но своенравной LLM.

Первый разработчик испугался её «галлюцинаций». Он запер модель в песочнице, не давая ей доступа к свежим данным. На вопросы модель отвечала красиво, но часто придумывала факты, то есть врала. Он просто «закопал» свой талант, боясь им пользоваться.

Второй же разработчик не побоялся. Он построил для своей LLM систему RAG — дал ей «лопату и карту», чтобы находить сокровища в базе знаний компании. Его AI-агент отвечал точно по делу, ссылаясь на реальные документы. Он заставил свой «талант» работать и приносить пользу.

Мощь LLM раскрывается не в ней самой, а в системах, которые вы строите вокруг неё.

Именно такие системы мы и будем строить на втором потоке нашего курса «AI-агенты для DS-специалистов». Мы не просто поговорим о RAG, а соберём полный пайплайн с оценкой качества, чтобы ваш агент не врал.

Представьте, что вы сможете начать изучать эту сложную и востребованную тему уже 15 сентября, а не ждать официального старта в октябре. У вас будет фора в 3 недели, чтобы спокойно разобраться в векторных базах и подходе «LLM as a Judge».

💸 Цена 49.000 ₽ действует последние 4 дня — до 24 августа.

👉 Начать строить RAG раньше других (https://clc.to/IEW_xw)
В Python у вас есть обработчик, который должен обрабатывать миллионы строк из большого файла без перегрузки памяти. Какой подход наиболее правильный?

👾 — Читать весь файл в память через readlines() и обрабатывать список
👍 — Читать файл построчно с помощью итератора (for line in file:)
🥰 — Использовать multiprocessing для параллельного чтения всего файла целиком
⚡️ — Преобразовать файл в JSON и загрузить его через json.load()
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
This media is not supported in your browser
VIEW IN TELEGRAM
📅 Сегодня в 19:00 МСК — бесплатный вебинар с Марией Жаровой.

Тема: «Введение в ML: как спрогнозировать стоимость недвижимости».

🔹 Разберём задачу прогноза стоимости недвижимости.
🔹 Покажем пошагово, как собрать первую модель.
🔹 Получите готовые скрипты для старта.

Не зайдёшь — будешь ещё год делать вид, что понимаешь графики в чужих презентациях.

👉 Регистрируйтесь (https://clc.to/ecfFjA)
Почему в многопоточном Python-приложении прироста скорости для CPU-bound задач почти не видно?

👾 — Потому что интерпретатор Python не умеет распараллеливать задачи
👍 — Потому что работает Global Interpreter Lock (GIL), который позволяет исполнять байткод только одному потоку
🥰 — Потому что потокам всегда не хватает памяти для стека
⚡️ — Потому что asyncio нужно использовать вместо потоков
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
У вас есть Python-сервис, обрабатывающий большие объёмы данных. При профилировании видно, что программа тратит много времени на создание временных коллекций при работе с map, filter и list comprehensions. Какой подход поможет уменьшить расход памяти и повысить эффективность?

👾 — Переписать код на while-циклы с индексами
👍 — Использовать генераторы и выражения-генераторы вместо создания списков
🥰 —Заменить map и filter на вложенные for-циклы
⚡️ — Принудительно вызывать gc.collect() после каждой итерации
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
У вас есть сервис на Python, который должен параллельно обрабатывать CPU-bound задачи (например, шифрование файлов). Какой из подходов обеспечит реальный прирост производительности?

👾 — Использовать threading.Thread для распараллеливания задач
👍 — Применить asyncio и await для конкурентного выполнения
🥰 — Использовать multiprocessing или ProcessPoolExecutor
⚡️ — Запускать задачи в concurrent.futures.ThreadPoolExecutor
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python