Что будет, если декоратор не возвращает ничего?
Если декоратор не возвращает ничего, то происходит следующее:
— Декоратор заменяет оригинальную декорируемую функцию на значение None.
— При попытке вызвать декорированную функцию произойдет ошибка AttributeError, поскольку None не является вызываемым объектом.
— Выполнение декорируемого кода на самом деле не происходит.
— Декоратор фактически "срывает" работу декорируемой функции, делая ее невызываемой.
Чтобы этого избежать, декоратор обязательно должен возвращать некоторое вызываемое значение — либо оригинальную функцию, либо другую функцию-обёртку.
Таким образом, не возвращая ничего декоратор нарушает ожидаемое поведение и "ломает" декорируемый код.
Библиотека задач по Python
Если декоратор не возвращает ничего, то происходит следующее:
— Декоратор заменяет оригинальную декорируемую функцию на значение None.
— При попытке вызвать декорированную функцию произойдет ошибка AttributeError, поскольку None не является вызываемым объектом.
— Выполнение декорируемого кода на самом деле не происходит.
— Декоратор фактически "срывает" работу декорируемой функции, делая ее невызываемой.
Чтобы этого избежать, декоратор обязательно должен возвращать некоторое вызываемое значение — либо оригинальную функцию, либо другую функцию-обёртку.
Таким образом, не возвращая ничего декоратор нарушает ожидаемое поведение и "ломает" декорируемый код.
Библиотека задач по Python
Что будет если ошибку не обработает блок except?
Если ошибка не будет обработана в блоке except, то программа прервется и выдаст сообщение об ошибке. Это называется необработанным исключением.
При возникновении исключения Python генерирует traceback — последовательность вызовов функций, которая привела к ошибке.
Если исключение не перехватывается блоком except, то traceback выводится пользователю и программа завершается аварийно.
Библиотека задач по Python
Если ошибка не будет обработана в блоке except, то программа прервется и выдаст сообщение об ошибке. Это называется необработанным исключением.
При возникновении исключения Python генерирует traceback — последовательность вызовов функций, которая привела к ошибке.
Если исключение не перехватывается блоком except, то traceback выводится пользователю и программа завершается аварийно.
Библиотека задач по Python
Есть ли в Python сборщик мусора, и, если есть, как он работает?
Стандартный интерпретатор использует несколько алгоритмов.
🧹 Подсчёт ссылок. Каждый объект в Python содержит внутренний счётчик ссылок. Когда он падает до нуля, это означает, что на объект больше нет ссылок, его можно удалить. Главный недостаток этого алгоритма — не умеет определять циклические ссылки.
🧹 Алгоритм поиска циклов. Реализован в модуле gc и активируется время от времени, а не постоянно. Если коротко, этот алгоритм периодически ищет объекты, которые ссылаются только друг на друга и не доступны извне. Объекты, признанные недостижимыми, удаляются.
Также стоит добавить, что циклический сборщик мусора делит объекты на три поколения в зависимости от того, как долго они существуют в памяти. Новые объекты помещаются в первое поколение. Если они сохраняются после очередного процесса сбора мусора, то перемещаются в следующее по старшинству поколение. Объекты в более старших поколениях проверяются реже.
Библиотека задач по Python
Стандартный интерпретатор использует несколько алгоритмов.
🧹 Подсчёт ссылок. Каждый объект в Python содержит внутренний счётчик ссылок. Когда он падает до нуля, это означает, что на объект больше нет ссылок, его можно удалить. Главный недостаток этого алгоритма — не умеет определять циклические ссылки.
🧹 Алгоритм поиска циклов. Реализован в модуле gc и активируется время от времени, а не постоянно. Если коротко, этот алгоритм периодически ищет объекты, которые ссылаются только друг на друга и не доступны извне. Объекты, признанные недостижимыми, удаляются.
Также стоит добавить, что циклический сборщик мусора делит объекты на три поколения в зависимости от того, как долго они существуют в памяти. Новые объекты помещаются в первое поколение. Если они сохраняются после очередного процесса сбора мусора, то перемещаются в следующее по старшинству поколение. Объекты в более старших поколениях проверяются реже.
Библиотека задач по Python
✍🏻 Что такое фабрика декораторов?
Фабрика декораторов — это особая разновидность функции высшего порядка, которая возвращает декоратор вместо прямого результата. Главное отличие фабрики декораторов от обычного декоратора в том, что она принимает аргументы, которые могут конфигурировать логику декоратора.
Например, фабрика может принимать имя лог-файла, в который будет производиться запись при вызове декорируемой функции. Или уровень логирования вместо простой записи всех вызовов.
Такой подход позволяет создавать переиспользуемые и гибко настраиваемые декораторы для решения разных задач.
Главные преимущества фабрик декораторов — это возможность абстрагироваться от конкретики реализации, избежать дублирования кода и создавать интуитивный API для декораторов с настройками.
Библиотека задач по Python
Фабрика декораторов — это особая разновидность функции высшего порядка, которая возвращает декоратор вместо прямого результата. Главное отличие фабрики декораторов от обычного декоратора в том, что она принимает аргументы, которые могут конфигурировать логику декоратора.
Например, фабрика может принимать имя лог-файла, в который будет производиться запись при вызове декорируемой функции. Или уровень логирования вместо простой записи всех вызовов.
Такой подход позволяет создавать переиспользуемые и гибко настраиваемые декораторы для решения разных задач.
Главные преимущества фабрик декораторов — это возможность абстрагироваться от конкретики реализации, избежать дублирования кода и создавать интуитивный API для декораторов с настройками.
Библиотека задач по Python
👍1
Какое(-ие) из следующих утверждений верно(-ы) в контексте Django 4.2+, если используется PostgreSQL, кастомный middleware и ATOMIC_REQUESTS=True для базы данных?
👾 — Если в кастомном middleware происходит исключение после get_response() (в process_response()), то транзакция, инициированная ATOMIC_REQUESTS, уже завершена
👍 — Использование @transaction.atomic внутри представления (view) поверх ATOMIC_REQUESTS=True приводит к конфликту и вызывает исключение
🥰 — Механизм prefetch_related() эффективнее select_related() в случае ForeignKey-связей один-к-одному
⚡️ — Если DEBUG=True, то middleware X-Content-Type-Options: nosniff не будет добавлен, даже если SecurityMiddleware активен
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
👾 — Если в кастомном middleware происходит исключение после get_response() (в process_response()), то транзакция, инициированная ATOMIC_REQUESTS, уже завершена
👍 — Использование @transaction.atomic внутри представления (view) поверх ATOMIC_REQUESTS=True приводит к конфликту и вызывает исключение
🥰 — Механизм prefetch_related() эффективнее select_related() в случае ForeignKey-связей один-к-одному
⚡️ — Если DEBUG=True, то middleware X-Content-Type-Options: nosniff не будет добавлен, даже если SecurityMiddleware активен
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Telegram
Библиотека задач по C# | тесты, код, задания
Задачи и тесты по C# для тренировки и обучения.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
Какой из следующих модулей необходимо импортировать для обработки вычислений даты и времени в Python?
👾 — datetime
👍 — date
🥰 — time
⚡️ — timedate
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
👾 — datetime
👍 — date
🥰 — time
⚡️ — timedate
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Telegram
Библиотека задач по C# | тесты, код, задания
Задачи и тесты по C# для тренировки и обучения.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
В каких ситуациях возникает исключение NotImplementedError?
Исключение NotImplementedError возникает, когда метод или функция должны быть реализованы в подклассе, но не были реализованы. Это может произойти, когда родительский класс определяет метод, но не реализует его сам, а оставляет это для подклассов. В этом случае, если подкласс не реализует метод, он будет вызывать исключение NotImplementedError. Это может быть полезно для отладки, чтобы убедиться, что все необходимые методы реализованы в подклассах. Это также может возникнуть в других ситуациях, например, если вы пытаетесь использовать неопределенную функцию или метод.
Библиотека задач по Python
Исключение NotImplementedError возникает, когда метод или функция должны быть реализованы в подклассе, но не были реализованы. Это может произойти, когда родительский класс определяет метод, но не реализует его сам, а оставляет это для подклассов. В этом случае, если подкласс не реализует метод, он будет вызывать исключение NotImplementedError. Это может быть полезно для отладки, чтобы убедиться, что все необходимые методы реализованы в подклассах. Это также может возникнуть в других ситуациях, например, если вы пытаетесь использовать неопределенную функцию или метод.
Библиотека задач по Python
Каким будет результат следующего выражения: -31 % 10?
Результатом выражения -31 % 10 будет 9. Это происходит потому, что для отрицательных чисел оператор % возвращает остаток от деления первого числа на второе немного другим образом. -31 % 10 = -3 — 1/10 и в ответ мы получим 10 — 1 = 9.
Библиотека задач по Python
Результатом выражения -31 % 10 будет 9. Это происходит потому, что для отрицательных чисел оператор % возвращает остаток от деления первого числа на второе немного другим образом. -31 % 10 = -3 — 1/10 и в ответ мы получим 10 — 1 = 9.
Библиотека задач по Python
🤔 Зачем вообще понимать, как работает ML?
Сейчас многие просто запускают модельку в sklearn — и радуются точности 0.92.
Вроде всё работает… но почему?
А когда сломается — что делать?
Машинное обучение — это система, которую можно понять.
Если знаешь, что делает градиентный спуск, зачем нужен бустинг и как дерево принимает решения — ты не просто «запускаешь», ты управляешь моделью.
👉 Мы сделали курс, чтобы в это было реально въехать:
— без сложных формул;
— с интуитивными объяснениями;
— от простого к сложному.
Если хочешь перейти от «гуглю код» к «понимаю, как это работает» — ты по адресу!
❗Стартуем в сентябре — бронируй место на курсе уже сейчас (https://clc.to/3zXSqA)
Сейчас многие просто запускают модельку в sklearn — и радуются точности 0.92.
Вроде всё работает… но почему?
А когда сломается — что делать?
Машинное обучение — это система, которую можно понять.
Если знаешь, что делает градиентный спуск, зачем нужен бустинг и как дерево принимает решения — ты не просто «запускаешь», ты управляешь моделью.
👉 Мы сделали курс, чтобы в это было реально въехать:
— без сложных формул;
— с интуитивными объяснениями;
— от простого к сложному.
Если хочешь перейти от «гуглю код» к «понимаю, как это работает» — ты по адресу!
❗Стартуем в сентябре — бронируй место на курсе уже сейчас (https://clc.to/3zXSqA)
Что делает os.rename()?
В Python функция os.rename() используется для переименования файла или директории в операционной системе. Она входит в модуль os.
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
В Python функция os.rename() используется для переименования файла или директории в операционной системе. Она входит в модуль os.
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Telegram
Библиотека задач по C# | тесты, код, задания
Задачи и тесты по C# для тренировки и обучения.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
Какое утверждение о системе зависимостей FastAPI корректно при использовании Depends, BackgroundTasks и ContextVar в асинхронном контексте?
👾 — Все зависимости в FastAPI создаются один раз при запуске приложения и переиспользуются между запросами, если они объявлены через Depends
👍 — Использование ContextVar внутри зависимости гарантирует корректное изолированное состояние на каждый HTTP-запрос, даже при высокой степени параллелизма
🥰 — BackgroundTasks могут быть объявлены внутри зависимости, но они не будут выполнены, если не проброшены явно в APIRouter
⚡️ — Асинхронные зависимости с yield (context managers) поддерживаются FastAPI только при использовании Python 3.12 и выше
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
👾 — Все зависимости в FastAPI создаются один раз при запуске приложения и переиспользуются между запросами, если они объявлены через Depends
👍 — Использование ContextVar внутри зависимости гарантирует корректное изолированное состояние на каждый HTTP-запрос, даже при высокой степени параллелизма
🥰 — BackgroundTasks могут быть объявлены внутри зависимости, но они не будут выполнены, если не проброшены явно в APIRouter
⚡️ — Асинхронные зависимости с yield (context managers) поддерживаются FastAPI только при использовании Python 3.12 и выше
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Telegram
Библиотека задач по C# | тесты, код, задания
Задачи и тесты по C# для тренировки и обучения.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
👍1
🫣 Боитесь математики в ML?
Думаете, для этого нужно вспоминать университетские интегралы и решать сложные уравнения?
У нас хорошая новость: машинное обучение — это в первую очередь инженерная практика, а не математическая олимпиада. Здесь важнее понимать суть, а не выводить формулы.
Именно на таком подходе — через логику, интуицию и наглядные примеры — и построен наш курс «ML для старта в Data Science», где мы объясняем всё на пальцах, без боли и зубрёжки.
Регистрируйтесь, пока есть свободные места 😉 (https://clc.to/MLcourse)
Думаете, для этого нужно вспоминать университетские интегралы и решать сложные уравнения?
У нас хорошая новость: машинное обучение — это в первую очередь инженерная практика, а не математическая олимпиада. Здесь важнее понимать суть, а не выводить формулы.
Именно на таком подходе — через логику, интуицию и наглядные примеры — и построен наш курс «ML для старта в Data Science», где мы объясняем всё на пальцах, без боли и зубрёжки.
Регистрируйтесь, пока есть свободные места 😉 (https://clc.to/MLcourse)
Какова главная причина использования полиморфизма?
👾 — Это позволяет программисту мыслить на более абстрактном уровне
👍 — Придется писать меньше программного кода
🥰 — Программа будет иметь более элегантный дизайн и ее будет легче поддерживать и обновлять
⚡️ — Программный код занимает меньше места
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
👾 — Это позволяет программисту мыслить на более абстрактном уровне
👍 — Придется писать меньше программного кода
🥰 — Программа будет иметь более элегантный дизайн и ее будет легче поддерживать и обновлять
⚡️ — Программный код занимает меньше места
(https://t.iss.one/csharp_problems_lib)Библиотека задач по Python
Telegram
Библиотека задач по C# | тесты, код, задания
Задачи и тесты по C# для тренировки и обучения.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/05448a24
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.iss.one/proglibrary/9197
👍1
🧐 Зоопарк моделей в ML: с чего начать?
Открываешь статью по машинному обучению — и в тебя летят слова: трансформеры, бустинги, SVM, регрессии.
Кажется, придётся учить всё это, иначе в ML не пустят.
Хорошая новость: 90% задач можно закрыть 2–3 классическими методами. Разберёшь их — уже сможешь собирать работающие проекты. А хайповые названия подождут.
Важно: не распыляйся на всё подряд. Начни с базового — это фундамент, на котором держится остальное.
👉 Успей попасть на курс «ML для старта в Data Science» (https://clc.to/Y2cDww)
Открываешь статью по машинному обучению — и в тебя летят слова: трансформеры, бустинги, SVM, регрессии.
Кажется, придётся учить всё это, иначе в ML не пустят.
Хорошая новость: 90% задач можно закрыть 2–3 классическими методами. Разберёшь их — уже сможешь собирать работающие проекты. А хайповые названия подождут.
Важно: не распыляйся на всё подряд. Начни с базового — это фундамент, на котором держится остальное.
👉 Успей попасть на курс «ML для старта в Data Science» (https://clc.to/Y2cDww)
Какое утверждение верно для работы с замыканиями и областями видимости в Python при использовании nonlocal и global?
👾 — nonlocal и global изменяют значение переменной только в момент объявления функции, а не при выполнении
👍 — nonlocal ищет переменную в ближайшей внешней области видимости, не включая глобальную, и изменяет её по ссылке
🥰 — global и nonlocal идентичны в поведении, но nonlocal можно использовать только внутри вложенных функций
⚡️ — Если переменная помечена как nonlocal, Python создаёт новую переменную в замыкании, не затрагивая внешнюю
Библиотека задач по Python
👾 — nonlocal и global изменяют значение переменной только в момент объявления функции, а не при выполнении
👍 — nonlocal ищет переменную в ближайшей внешней области видимости, не включая глобальную, и изменяет её по ссылке
🥰 — global и nonlocal идентичны в поведении, но nonlocal можно использовать только внутри вложенных функций
⚡️ — Если переменная помечена как nonlocal, Python создаёт новую переменную в замыкании, не затрагивая внешнюю
Библиотека задач по Python