its not about how you refer to them...They are two completely different things. Ones a class variable and one is an instance variable.
class Klass: Kvar = 123 def __init__(self): self.var = 456 obj1 = Klass() obj2 = Klass()Initial values of both
>>> print(obj1.Kvar, obj1.var) 123 456 >>> print(obj2.Kvar, obj2.var) 123 456change class variable
>>> Klass.Kvar = 999 >>> print(obj1.Kvar, obj1.var) 999 456 >>> print(obj2.Kvar, obj2.var) 999 456change instance variable
>>> obj1.var = 888 >>> print(obj1.Kvar, obj1.var) 999 888 >>> print(obj2.Kvar, obj2.var) 999 456As you can see there is one class variable, all object share that, where each object has its own instance variable.
Recommended Tutorials: