- 主题:请问这个继承如何实现
用的是python3.8,代码如下:
class A():
def a1(self):
self.f()
def f(self):
print("a")
class B(A):
def a2(self):
super().a1()
def f(self):
print("b")
x=B()
x.a2()
执行结果是b,我希望执行结果是a,但父类A不允许修改,该如何实现?
--
FROM 221.222.20.*
另外一点,子类B只允许修改a2函数.
--
FROM 221.222.20.*
改 a2 就行了,哈哈哈哈。
def a2(self):
super().f()
【 在 xiaob (飞城浪子) 的大作中提到: 】
: 另外一点,子类B只允许修改a2函数.
--
FROM 123.112.147.*
haha~~,投机取巧了。
这是一个项目的简化,a1里还有很多代码要执行的。
问题本质是调用的父类函数如何再调用父类中的同名函数?
感谢解答!
【 在 world 的大作中提到: 】
: 改 a2 就行了,哈哈哈哈。
: def a2(self):
: super().f()
: ...................
--
FROM 223.72.77.*
把B里面的
def f():
这个函数删掉就行了啊
你子类定义了这个函数,他就把父类的f冲掉了
【 在 xiaob 的大作中提到: 】
: 用的是python3.8,代码如下:
: class A():
: def a1(self):
: ...................
--
FROM 59.41.21.*