KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm interested in hearing some discussion about class attributes in Python. For example, what is a good use case for class attributes? For the most part, I can not come up with a case where a class attribute is preferable to using a module level attribute. If this is true, then why have them around? The problem I have with them, is that it is almost too easy to clobber a class attribute value by mistake, and then your "global" value has turned into a local instance attribute. Feel free to comment on how you would handle the following situations: Constant values used by a class and/or sub-classes. This may include "magic number" dictionary keys or list indexes that will never change, but possible need one-time initialization. Default class attribute, that in rare occasions updated for a special instance of the class. Global data structure used to represent an internal state of a class shared between all instances. A class that initializes a number of default attributes, not influenced by constructor arguments. Some Related Posts: Difference Between Class and Instance Attributes
Tags (comma-separated)
Save Edits
Cancel