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
Encapsulation is a good principle: when an attribute is inside the class it pertains to instead of being in the global scope, this gives additional information to people reading the code.
In your situations 1-4, I would thus avoid globals as much as I can, and prefer using class attributes, which allow one to benefit from encapsulation.