标签:better 因此 类继承 创建 nbsp super names space 方法
python子类继承父类的时候,如果不写super(子类,self).init(),则只继承父类的方法和公共属性,而不继承父类init方法中定义的属性和方法
super(子类,self).表示调用父类的某个方法或属性
因此:
1.super(子类,self).init() 表示调用父类的初始化方法,因此可以获取父类在初始化方法中创建的属性和方法
2.如果子类要对父类的某个方法进行重构,但是又要调用父类的该方法,则可以用super(子类,self).方法名称进行调用父类方法
例如:
def parse_args(self, args=None, namespace=None):#子类中重写发方法
# Catch missing argument for a better error message
if (hasattr(self.cmd, ‘missing_args_message‘) and
not (args or any(not arg.startswith(‘-‘) for arg in args))):
self.error(self.cmd.missing_args_message)
return super(CommandParser, self).parse_args(args, namespace)#调用父类的该方法
标签:better 因此 类继承 创建 nbsp super names space 方法
原文地址:https://www.cnblogs.com/fishbiubiu/p/12268317.html