because all instances of class share one copy of class attributewhen any instance changes itthe value is changed for all instances class attributes are defined within class definition and outside of any method since there is one of these attributes per class and not one per instancethey're accessed via different notationaccess class attributes using self __class__ name notation -this is just one way to do this the safest in general class samplex def increment(self)self __class__ + sample( increment( __class__