Русский
Открыть в Telegram

Пост Атрибуты модуля можно создавать только при обращении

13 сентября 2026
Z
Zen of Python
Фотография
Атрибуты модуля можно создавать только при обращении Если часть API не нужна во время запуска, готовить её заранее необязательно. Начиная с Python 3.7, в модуле можно определить __getattr__: он обрабатывает обращение к имени, которого в модуле нет. Для нужного имени функция возвращает динамически созданное значение, для остальных поднимает AttributeError. Так создание атрибута переносится на момент, когда он действительно понадобился, а запуск не ждёт этой работы. Лень здесь вполне питонична, пока ошибка для неизвестных имён остаётся явной. В разборе атрибутов модуля есть минимальный пример с обычной функцией, динамическим атрибутом и AttributeError для неизвестного имени.
5 · 1.4K ·

Рядом в ленте

ZZen of PythonКонтекст запроса можно добавить во все логи без ручного extra В ASGI-приложении запрос заканчивается не там, где начался: обработчик вызывает корутины из другихZZen of PythonСигналы Django подводят в критичных сценариях, но получателей можно выполнять надёжнее Сигналы Django удобно разрывают зависимости между модулями. В обработке п
это сообщение
ZZen of PythonКогда isinstance() мало, TypeGuard может удивить С isinstance() всё просто: mypy сам сужает объединение типов в каждой ветке. Сложнее, если объект приходится раZZen of PythonПотоки ускоряют ввод-вывод, пока мелкая работа не упирается в процессор Вы увеличиваете число рабочих потоков ThreadPoolExecutor, настраиваете пул соединений, а
ZZen of PythonZen of Python@zen_of_python · канал · Технологии
18 712подписчиков1 104средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем