Чем functools.cached_property отличается от
👾 — Всегда вычисляет заново при каждом доступе
👍 — Вычисляет один раз на экземпляр и кеширует; можно сбросить del obj.attr
🥰 — Делит кеш между всеми экземплярами класса
⚡️ — Автоматически кэширует результаты корутин
Библиотека задач по Python
@property?👾 — Всегда вычисляет заново при каждом доступе
👍 — Вычисляет один раз на экземпляр и кеширует; можно сбросить del obj.attr
🥰 — Делит кеш между всеми экземплярами класса
⚡️ — Автоматически кэширует результаты корутин
Библиотека задач по Python
👍8
📊 Задача с собеседования
Если не понимаете с какой стороны подступиться к задаче, то пора подтянуть математику.
🎓 Именно этому посвящен курс экспресс-курс «Математика для Data Science» от Proglib Academy:
— работа с векторами и матрицами;
— линейная регрессия и метод наименьших квадратов;
— вероятности, распределения, статистика;
— и многое другое.
⏳ Старт: 4 декабря
🔥 Скидка: 40% до конца ноября
👉 Подключиться к курсу
Имеются данные о продажах за последние 12 месяцев. Требуется оценить наличие линейной зависимости между количеством заключённых сделок и объёмом выручки, а также построить прогноз выручки при достижении 150 сделок.
Если не понимаете с какой стороны подступиться к задаче, то пора подтянуть математику.
🎓 Именно этому посвящен курс экспресс-курс «Математика для Data Science» от Proglib Academy:
— работа с векторами и матрицами;
— линейная регрессия и метод наименьших квадратов;
— вероятности, распределения, статистика;
— и многое другое.
⏳ Старт: 4 декабря
🔥 Скидка: 40% до конца ноября
👉 Подключиться к курсу
Зачем в multiprocessing на Windows нужен if __name__ == "__main__":?
👾 — Чтобы было быстрее
👍 — Чтобы избежать рекурсивного спавна: Windows использует spawn и повторно импортирует модуль; гард не даст выполнить модульный код в дочернем процессе
🥰 — Нужен для совместимости с Python 2
⚡️ — Он отключает GIL в дочерних процессах
Библиотека задач по Python
👾 — Чтобы было быстрее
👍 — Чтобы избежать рекурсивного спавна: Windows использует spawn и повторно импортирует модуль; гард не даст выполнить модульный код в дочернем процессе
🥰 — Нужен для совместимости с Python 2
⚡️ — Он отключает GIL в дочерних процессах
Библиотека задач по Python
👍23
Что делает
👾 — Печатает вывод в реальном времени
👍 — Бросает CalledProcessError, если код выхода ≠ 0
🥰 — Автоматически убивает процесс через 10 секунд
⚡️ — Включает shell=True по умолчанию
Библиотека задач по Python
subprocess.run(cmd, check=True)?👾 — Печатает вывод в реальном времени
👍 — Бросает CalledProcessError, если код выхода ≠ 0
🥰 — Автоматически убивает процесс через 10 секунд
⚡️ — Включает shell=True по умолчанию
Библиотека задач по Python
👍7
Чем typing.Any отличается от object?
👾 — Any — то же самое, что object
👍 — Any совместим со всем и «протекает» проверки; object — верхний тип, но требует явных проверок/кастов для специфичных методов
🥰 — object запрещает присваивания переменных других типов
⚡️ — Any делает объект неизменяемым
Библиотека задач по Python
👾 — Any — то же самое, что object
👍 — Any совместим со всем и «протекает» проверки; object — верхний тип, но требует явных проверок/кастов для специфичных методов
🥰 — object запрещает присваивания переменных других типов
⚡️ — Any делает объект неизменяемым
Библиотека задач по Python
👍10
Что делает __all__ в модуле?
👾 — Управляет getattr при отсутствии атрибутов
👍 — Определяет, какие имена экспортируются при from module import *; прямой import module не затрагивает
🥰 — Полностью скрывает имена от любых импортов
⚡️ — Ускоряет импорт, пропуская «лишние» имена
Библиотека задач по Python
👾 — Управляет getattr при отсутствии атрибутов
👍 — Определяет, какие имена экспортируются при from module import *; прямой import module не затрагивает
🥰 — Полностью скрывает имена от любых импортов
⚡️ — Ускоряет импорт, пропуская «лишние» имена
Библиотека задач по Python
👍15
Что означает, если __exit__(exc_type, exc, tb) возвращает True?
👾 — Исключение пробрасывается дальше
👍 — Исключение подавляется, блок with не выбросит его наружу
🥰 — Контекстный менеджер перезапускает тело with
⚡️ — Тип исключения меняется на RuntimeError
Библиотека задач по Python
👾 — Исключение пробрасывается дальше
👍 — Исключение подавляется, блок with не выбросит его наружу
🥰 — Контекстный менеджер перезапускает тело with
⚡️ — Тип исключения меняется на RuntimeError
Библиотека задач по Python
👾8👍1🤔1
Media is too big
VIEW IN TELEGRAM
🔥 Закрой пробелы в математике за 8 недель
Валишься на вопросах про математику на собесах?
Proglib Academy запускает курс «Математика для Data Science», чтобы помочь тебе получить вакансию мечты!
🔎 Тебя ждут:
→ топовые эксперты, один из них на видео — Мария Тихонова. Мария — кандидат компьютерных наук, руководитель исследовательского направления SberAI, доцент факультета компьютерных наук и преподаватель НИУ ВШЭ;
→ живые вебинары, на которых можно задать вопросы спикерам;
→ доступ к материалам в записи, если не успели на лекцию и чат;
→ 3 задания с практикой на Python и финальный проект с подробной обратной связью от экспертов курса;
→ актуальные знания: программа разработана в ноябре 2025г;
→ программа без воды — 2 месяца только самого нужного для старта.
👉 Пройди короткий тест и узнай свой уровень математики.
Приятные бонусы:
🎁 скидка 40% до 30 ноября;
🎁 оплати до конца ноября → курс «Школьная математика» в подарок.
🔗 Подробнее о курсе
Валишься на вопросах про математику на собесах?
Proglib Academy запускает курс «Математика для Data Science», чтобы помочь тебе получить вакансию мечты!
🔎 Тебя ждут:
→ топовые эксперты, один из них на видео — Мария Тихонова. Мария — кандидат компьютерных наук, руководитель исследовательского направления SberAI, доцент факультета компьютерных наук и преподаватель НИУ ВШЭ;
→ живые вебинары, на которых можно задать вопросы спикерам;
→ доступ к материалам в записи, если не успели на лекцию и чат;
→ 3 задания с практикой на Python и финальный проект с подробной обратной связью от экспертов курса;
→ актуальные знания: программа разработана в ноябре 2025г;
→ программа без воды — 2 месяца только самого нужного для старта.
👉 Пройди короткий тест и узнай свой уровень математики.
Приятные бонусы:
🎁 скидка 40% до 30 ноября;
🎁 оплати до конца ноября → курс «Школьная математика» в подарок.
🔗 Подробнее о курсе
🤔1
Что будет у functools.lru_cache, если аргумент не хешируемый (например, list)?
👾 — Автоматически скопирует и захеширует любой аргумент
👍 — Построит ключ из args/kwargs; при нехешируемом аргументе бросит TypeError на вызове
🥰 — Нехешируемые аргументы игнорируются при ключе
⚡️ — Учитывает только позиционные аргументы, kwargs игнорируются
Библиотека задач по Python
👾 — Автоматически скопирует и захеширует любой аргумент
👍 — Построит ключ из args/kwargs; при нехешируемом аргументе бросит TypeError на вызове
🥰 — Нехешируемые аргументы игнорируются при ключе
⚡️ — Учитывает только позиционные аргументы, kwargs игнорируются
Библиотека задач по Python
👍3👾2
Что будет с хешируемостью класса, если переопределить только __eq__?
👾 — Останется хешируемым через object.hash
👍 — hash станет None, экземпляры станут нехешируемыми, пока явно не определить hash (исключение — frozen dataclass генерирует)
🥰 — Хеш станет id(self)
⚡️ — Хеш посчитается из полей, участвующих в eq
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👾 — Останется хешируемым через object.hash
👍 — hash станет None, экземпляры станут нехешируемыми, пока явно не определить hash (исключение — frozen dataclass генерирует)
🥰 — Хеш станет id(self)
⚡️ — Хеш посчитается из полей, участвующих в eq
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👍4
Как корректно группировать элементы по ключу itertools.groupby?
👾 — Достаточно передать key, порядок не важен
👍 — Предварительно отсортировать по тому же ключу; groupby группирует только соседние элементы
🥰 — Использовать groupby всегда вместо словаря списков
⚡️ — Указать unique=True у groupby
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👾 — Достаточно передать key, порядок не важен
👍 — Предварительно отсортировать по тому же ключу; groupby группирует только соседние элементы
🥰 — Использовать groupby всегда вместо словаря списков
⚡️ — Указать unique=True у groupby
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👍1
Что на самом деле гарантирует GIL в CPython?
👾 — Полную потокобезопасность без блокировок
👍 — Что одновременно байткод исполняет только один поток; гонки в данных всё равно возможны
🥰 — Истинный параллелизм CPU на всех ядрах в потоках
⚡️ — Ускорение asyncio для CPU-bound задач
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👾 — Полную потокобезопасность без блокировок
👍 — Что одновременно байткод исполняет только один поток; гонки в данных всё равно возможны
🥰 — Истинный параллелизм CPU на всех ядрах в потоках
⚡️ — Ускорение asyncio для CPU-bound задач
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👍12👾1
Что произойдёт?
👾 — Изменится только rows[0]
👍 — Изменится обе строки: [[1,0,0],[1,0,0]] из-за общей ссылки на один внутренний список
🥰 — Произойдёт глубокое копирование автоматически
⚡️ — Будет IndexError
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
rows = [[0]*3]*2
rows[0][0] = 1
👾 — Изменится только rows[0]
👍 — Изменится обе строки: [[1,0,0],[1,0,0]] из-за общей ссылки на один внутренний список
🥰 — Произойдёт глубокое копирование автоматически
⚡️ — Будет IndexError
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Библиотека задач по Python
👍7⚡1