1、SUPER()只能用于新式类中

所谓新式类,旧类的,关键就是看是不是有基类,有基类的就是形式类,比如class A(object),所以class A()自然就是旧式类了。
# 单继承
class A(object):
def __init__(self, a, b):
self.a = a
self.b = b
def sayHello(self):
print('this is class A, a={},b={}'.format(self.a, self.b))
class B(A):
def __init__(self, a, b, c):
super(B, self).__init__(a,b)
self.c = c
def sayHello(self):
super(B, self).sayHello()
print('this is b call')
b = B('b','also b','test')
b.sayHello()
# this is class A, a=b,b=also b
# this is b call2、super 其实和父类没有实质性的关联
多重继承下,super就没有那么简单了。
# 多重继承
class Base(object):
def __init__(self):
print('enter Base')
print('out Base')
class A(Base):
def __init__(self):
print('enter A')
super(A, self).__init__()
print('out A')
class B(Base):
def __init__(self):
print('enter B')
super(B, self).__init__()
print('out B')
class C(A, B):
def __init__(self):
print('enter C')
super(C, self).__init__()
print('out C')
c = C()
#enter C
#enter A
#enter B
#enter Base
#out Base
#out B
#out A
#out C以上就是python中super的使用注意,希望能对大家有所帮助。更多Python学习指路:创新互联python教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
网页名称:创新互联Python教程:python中super的使用注意
转载来源:http://www.csdahua.cn/qtweb/news40/372940.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网