Метапрограммирование — код, который создаёт или модифицирует другой код. Инструменты: metaclass — контролирует создание классов. Декораторы — оборачивают функции/классы. __init_subclass__ — хук при создании подкласса. __set_name__ — дескрипторы узнают своё имя. __class_getitem__ — Generic[T]. monkey patching — замена методов в runtime. ast — анализ и трансформация кода. type() — динамическое создание классов. Примеры: Django ORM (metaclass создаёт поля), pytest (собирает тесты), dataclass (генерирует __init__). Мощно, но усложняет отладку — используй осторожно.
Что такое метапрограммирование в Python?
Senior
224 просмотровAFK Offer AI
Реализуйте подсчёт частоты слов в тексте