Python static method and class inheritance
Just to be sure that it works the way I thought:
class Base(object): _MY_VALUE = None @classmethod def my_value(cls, value=None): if value: cls._MY_VALUE = value return cls._MY_VALUE class Child1(Base): pass class Child2(Base): pass if __name__ == '__main__': print Child1.my_value() print Child1.my_value(value=1) print Child1.my_value() print Child1().my_value() print Child2.my_value() print Child2().my_value() print Base.my_value()
Output:
None 1 1 1 None None None
Licensed under CC BY-SA 3.0