Julien Danjou has a great guide on how to use static, class, or abstract methods in python.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# class method class TrackedObject: __id__ = 0 def __init__(self, x, id = None): self.x = x if id != None: self.id = id else: self.id = self.__class__.__id__ self.__class__.__id__ += 1 @classmethod def reset(cls): cls.__id__ = 0 # |