Из этого руководства вы узнаете, как:
— Создавать управляемые атрибуты или свойства в классах
— Выполнять ленивую оценку атрибутов и создавать вычисляемые атрибуты
— Сделать классы более «питоничными», используя свойства вместо методов геттер и сеттер
— Создавать свойства только для чтения и с возможностью записи
— Создавать согласованные и обратно совместимые API для классов
Мы также рассмотрим практические примеры, в которых property()
используется для валидации входных данных, динамического вычисления значений атрибутов, логирования и других целей.