👍1👎1
Предположим, что вы требуете от методов или классов, используемых приложением, регистрации в API−интерфейсе для будущей обработки (может быть, API−интерфейс позже будет обращаться к объектам и отвечать на текущие события). Несмотря на то что это могли бы предоставить регистрационные функции, которые выполняли вызову вручную после того, как объекты определены, декораторы сделают ваше решение более элегантным.
Механизм работы:
Поскольку он возвращает сам объект, а не оболочку, он не перехватывает будущие вызовы.
Вывод кода:
Таким образом, регистр хранит ссылки на функции и классы, и их можно вызывать напрямую через регистр.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
👍1👎1
В имеющемся коде объект функции обертывается представленной формой исследования, если активен режим 𝚍𝚎𝚋𝚞𝚐 (по умолчанию 𝚃𝚛𝚞𝚎). В противном случае возвращается сама функция, и код выполняется без дополнительных проверок.
Если бы 𝚊𝚐𝚎 был вне диапазона (например, 𝟷𝟻𝟶), то возникло бы исключение 𝚃𝚢𝚙𝚎𝙴𝚛𝚛𝚘𝚛 с сообщением «𝙰𝚛𝚐𝚞𝚖𝚎𝚗𝚝 𝟷 𝚗𝚘𝚝 𝚒𝚗 𝟶..𝟷𝟸𝟶».
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
В гайдах для начинающих на такие вопросы вряд ли найдется ответ. А вот в телеграм-канале OTP Tech точно найдется наглядный разбор.
В OTP Tech вы получите реальный опыт внедрения сложных решений в продакшен крупного финтеха. Ну и просто фановый интерактив, который поможет разгрузить голову.
Если вы разрабатываете, проектируете или администрируете и хотите смотреть дальше хеллоу ворлдов — вам будет здесь интересно.
Присоединяйтесь: @otp_tech
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
🧩 Как называется параметр ???, который сузит список импортируемых столбцов до заданного списка?
Anonymous Quiz
38%
columns
17%
usecols
18%
col_names
27%
select_columns
👍1👎1
С помощью параметра 𝚞𝚜𝚎𝚌𝚘𝚕𝚜 функции 𝚛𝚎𝚊𝚍_𝚌𝚜𝚟 можно указать список импортируемых библиотекой 𝚙𝚊𝚗𝚍𝚊𝚜 столбцов.
👍1👎1
🧩 Что выведет код?
Anonymous Quiz
21%
('c', 'd')
10%
('a', 'c', 'd')
54%
('a', 'b', 'c', 'd')
15%
Error
👍1👎1
Из
«𝚌𝚘𝚍𝚎𝚘𝚋𝚓𝚎𝚌𝚝.𝚌𝚘_𝚟𝚊𝚛𝚗𝚊𝚖𝚎𝚜: кортеж, содержащий имена локальных переменных в функции (начиная с имен параметров)».
В 𝚏𝚞𝚗𝚌() определены:
− Аргументы: 𝚊, 𝚋
− Локальные переменные: 𝚌, 𝚍
𝚌𝚘𝚍𝚎.𝚌𝚘_𝚟𝚊𝚛𝚗𝚊𝚖𝚎𝚜 — все имена локальных переменных. Этот атрибут возвращает кортеж всех локальных переменных функции, включая аргументы и переменные, определенные внутри функции.
👍1👎1
👎2👍1
Марк Лутц «Изучаем Python», глава 𝟹𝟿:
«Аннотации функций ... можно бы предложить альтернативу — аргументы декоратора, используемые в примере для задания проверок вложения в диапазон».
Декоратор @𝚛𝚊𝚗𝚐𝚎𝚝𝚎𝚜𝚝(𝚊=(𝟷, 𝟻), 𝚌=(𝟶.𝟶, 𝟷.𝟶)) принимает аргументы для проверки диапазонов:
В данной реализации декоратор является «пустым» — он принимает аргументы, но не выполняет никаких проверок, просто возвращает исходную функцию без изменений.
При вызове 𝚏𝚞𝚗𝚌(𝟸, 𝟹, 𝟶.𝟻) функция выполняется с параметрами:
− 𝚊 = 𝟸
− 𝚋 = 𝟹
− 𝚌 = 𝟶.𝟻
Функция вычисляет и выводит результат: 𝟸 + 𝟹 + 𝟶.𝟻 = 𝟻.𝟻.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1👎1
🧩 Что делает флаг -O в команде 'python -O main.py'?
Anonymous Quiz
8%
Удаляет все комментарии и docstrings
44%
Включает режим отладки с дополнительными проверками
25%
Удаляет операторы assert и код, зависящий от __debug__
23%
Такого флага не существует
👍1👎1
Флаг −𝙾 в команде «𝚙𝚢𝚝𝚑𝚘𝚗 −𝙾 𝚖𝚊𝚒𝚗.𝚙𝚢» выполняет следующие действия:
Это позволяет создавать оптимизированный байт−код без отладочной информации и проверок 𝚊𝚜𝚜𝚎𝚛𝚝.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👎1
🧩 Что выведет код?
Anonymous Quiz
22%
<class 'type'>
63%
<class '__main__.MyClass'>
9%
class
7%
Error
👍1👎1
𝚝𝚢𝚙𝚎(𝙼𝚢𝙲𝚕𝚊𝚜𝚜) возвращает <𝚌𝚕𝚊𝚜𝚜 '𝚝𝚢𝚙𝚎'> — это показывает, что сам класс 𝙼𝚢𝙲𝚕𝚊𝚜𝚜 является экземпляром класса 𝚝𝚢𝚙𝚎
Марк Лутц «Изучаем Python», глава 40:
«Классы представляют собой экземпляры класса 𝚝𝚢𝚙𝚎». Это означает, что 𝚝𝚢𝚙𝚎 является не только встроенным классом, но и метаклассом: классом, экземплярами которого являются другие классы.
Фактически 𝚖𝚎𝚝𝚊𝚌𝚕𝚊𝚜𝚜 — это просто фабрика классов, и благодаря тому, что классы являются экземплярами класса 𝚝𝚢𝚙𝚎, возможно создание собственных подклассов 𝚝𝚢𝚙𝚎 (называемых метаклассами) для генерации классов особого вида.
👍1👎1