Библиотека задач по Python | тесты, код, задания
6.61K subscribers
838 photos
14 videos
582 links
Задачи и тесты по Python для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/9f7384d6

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Чем @staticmethod отличается от @classmethod?

👾 —staticmethod получает cls, а classmethod — нет
👍 — classmethod получает класс первым аргументом (cls), staticmethod ничего не получает автоматически
🥰 — Оба автоматически получают self
⚡️ — Они идентичны, различается только синтаксис

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🥱1
Все подклассы являются подтипами в объектно-ориентированном программировании.

👾 — True
⚡️ — False

Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
9
В Python при сравнении объектов с оператором is и == есть разница. Что наиболее корректно?

👾 — is сравнивает значения объектов, а == — их идентичность в памяти
👍 — is проверяет идентичность (один и тот же объект в памяти), == — равенство значений
🥰 — Оба оператора работают одинаково, разницы нет
⚡️ — is всегда быстрее и потому используется вместо ==

Библиотека задач по Python
👍27
Готовитесь к собеседованию в AI?

Вопросы по математической базе — стандартный этап отбора на позиции Data Scientist и ML Engineer. Вас спросят не только про код, но и про то, как работают алгоритмы «под капотом».

Прокачайте хард-скиллы на обновленном курсе «Математика для разработки AI-моделей».

Важный апдейт:

— теперь обучение включает живые вебинары;

— первый прошел, но второй стартует сегодня, 9 декабря;

— это шанс разобрать сложные вопросы с экспертами в прямом эфире.

Что внутри:

— линейная алгебра;

— матанализ;

— теория вероятностей.

Успейте присоединиться к потоку
Вы случайно закоммитили секретные данные (пароль/ключ API) в публичный репозиторий. Какой из подходов наиболее правильный для удаления этой информации из истории?

👾 — Выполнить git reset --hard и закоммитить снова
👍 — Удалить файл локально и сделать новый коммит с исправлением
🥰 — Использовать git filter-repo (или git filter-branch) для переписывания истории и удалить секреты из всех прошлых коммитов
⚡️ — Просто добавить секрет в .gitignore, чтобы он больше не попадал в коммиты

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
👾18🥰4
У вас есть высоконагруженное Django-приложение. Пользователи жалуются на медленные отклики при работе с ORM-запросами. Какой из подходов будет наиболее правильным для оптимизации?

👾 — Использовать select_related и prefetch_related для оптимизации запросов и уменьшения количества обращений к базе
👍 — Заменить все ORM-запросы на чистый SQL, так как он всегда быстрее
🥰 — Увеличить таймаут подключения к базе данных
⚡️ — Отключить транзакции, чтобы ускорить коммиты

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
👾15👍31
Что выведет код?

👾 — [7, 19, 45, 89]
👍 — [2, 4, 22, 72]
🥰 — [4, 7, 19, 2, 89, 45, 72, 22]
⚡️ — [2, 4, 7, 19, 22, 45, 72, 89]

Библиотека задач по Python
👾46
Ваш Python-сервис должен обрабатывать большое количество одновременных HTTP-запросов. Вы замечаете, что при использовании потоков прироста производительности почти нет. Какой подход наиболее правильный?

👾 — Увеличить количество потоков в ThreadPoolExecutor, чтобы нагрузить CPU
👍 — Перейти на asyncio или uvloop, чтобы эффективно обрабатывать I/O-bound задачи без блокировок
🥰 — Использовать multiprocessing, создавая процесс на каждый запрос
⚡️ — Запускать gc.collect() вручную чаще, чтобы ускорить выполнение потоков

Библиотека задач по Python
👍11
В Python-сервисе нужно обрабатывать очень большие объёмы данных построчно из файлов размером в десятки гигабайт. Какой подход наиболее правильный, чтобы избежать проблем с памятью?

Варианты ответа:
👾 — Использовать readlines() для чтения всего файла в список
👍 — Читать файл построчно через итератор (for line in file:)
🥰 — Сначала загрузить файл в pandas.DataFrame, а затем обрабатывать
⚡️ — Использовать json.load() для загрузки файла в память

Библиотека задач по Python
🥰11👍10
Прокачай свой Python на 100%

Задачи помогают запомнить синтаксис. Фундаментальные курсы помогают понять, почему решение должно быть именно таким. Совмести приятное с полезным.

Оффер 1 + 2:

Платишь за один курс (старший по цене), забираешь три.

Рекомендуем:

— Алгоритмы и структуры данных;
— Математика для Data Science (если смотришь в сторону AI);
— Архитектуры и шаблоны проектирования.

Забрать бандл

До 31 декабря.
Менеджер: @manager_proglib
У вас есть Python-сервис, обрабатывающий большие объёмы данных. При профилировании видно, что программа тратит много времени на создание временных коллекций при работе с map, filter и list comprehensions. Какой подход поможет уменьшить расход памяти и повысить эффективность?

👾 — Переписать код на while-циклы с индексами
👍 — Использовать генераторы и выражения-генераторы вместо создания списков
🥰 — Заменить map и filter на вложенные for-циклы
⚡️ — Принудительно вызывать gc.collect() после каждой итерации

Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Что будет у functools.lru_cache, если аргумент не хешируемый (например, list)?

👾 — Автоматически скопирует и захеширует любой аргумент
👍 — Построит ключ из args/kwargs; при нехешируемом аргументе бросит TypeError на вызове
🥰 — Нехешируемые аргументы игнорируются при ключе
⚡️ — Учитывает только позиционные аргументы, kwargs игнорируются

Библиотека задач по Python
👍4