一个简单的python模块提供了对python 2类的超级能力。
supertools的Python项目详细描述
一个简单的python2装饰器,它将.__super成员作为私有静态成员提供给python2类 以便不必指定当前类名。
没有超级或超级工具:
classMyClass(MyParent):def__init__(self):MyParent.__init__(self)
使用super的经典实现(python 2语法):
classMyClass(MyParent):def__init__(self):super(MyClass,self).__init__()
使用超级工具:
fromsupertoolsimportsuperable@superableclassMyClass(MyParent):def__init__(self):self.__super.__init__()
语法很好,既不重复类名也不重复父类名,而且在运行时也不象 其他类似的模块也有。
请注意,此语法与Python3语法不兼容,在本例中为:
classMyClass(MyParent):def__init__(self):super().__init__()