Python,不能覆盖一个方法



我有这样的代码它会打印"1"从类parent_model_admin,即使我指定了super(admin_base, self).test()方法,我如何打印&;2&;;

class theme():
pass
class parent_model_admin():
def test(self):
print("1")
pass
pass

class admin_base(theme,parent_model_admin):
def test(self):
print("2")
pass
pass

class user(parent_model_admin):
def test(self):
print("3")
pass
pass

class admin(user, admin_base):
def test(self):
super(admin_base, self).test()
pass
pass
hai = admin()
hai.test()

admin类更改为:

class admin(user, admin_base):
def test(self):
super(user, self).test()
pass
pass

super(user, self).test()代替

完整代码:

class theme():
pass
class parent_model_admin():
def test(self):
print("1")
pass
pass

class admin_base(theme,parent_model_admin):
def test(self):
print("2")
pass
pass

class user(parent_model_admin):
def test(self):
print("3")
pass
pass

class admin(user, admin_base):
def test(self):
super(user, self).test()
pass
pass
hai = admin()
hai.test()

输出:

2

最新更新