Мне интересно услышать некоторое обсуждение атрибутов класса в Python. Например, что является хорошим вариантом использования атрибутов класса? По большей части я не могу придумать случай, когда атрибут класса предпочтительнее использовать атрибут уровня модуля. Если это так, то почему их вокруг?Атрибуты класса Python и модуля
Проблема, с которой я сталкиваюсь, заключается в том, что по ошибке слишком сложно сбивать значение атрибута класса, а затем ваше «глобальное» значение превратилось в атрибут локального экземпляра.
Не стесняйтесь комментировать, как бы вы в следующих ситуациях:
- Постоянные значения, используемые классом и/или подклассов. Это может включать в себя словарные клавиши «магического номера» или индексы списка, которые никогда не изменятся, но, возможно, потребуется однократная инициализация.
- По умолчанию атрибут класса, который в редких случаях обновляется для специального экземпляра класса.
- Глобальная структура данных, используемая для представления внутреннего состояния класса, общего для всех экземпляров.
- Класс, который инициализирует ряд атрибутов по умолчанию, не подверженных влиянию аргументов конструктора.
Некоторые Похожие сообщения:
Difference Between Class and Instance Attributes
должен быть wiki сообщества – SilentGhost