gpt4 book ai didi

python - 如何重写两个相互调用的方法,同时使用 super() 访问基类方法?

转载 作者:行者123 更新时间:2023-12-01 01:56:22 26 4
gpt4 key购买 nike

我有两个 Python3 类:

class A:
def f1(self):
self.f2()

def f2(self):
pass

class B(A):
def f1(self):
super().f1()

def f2(self):
pass

我希望 super().f1() 调用在内部也调用 A 的 f2()。然而,它最终调用了 B 的 f2()。我该如何改变这个?

最佳答案

当前行为是继承机制的预期行为。但你可以手动选择在A类中调用哪个方法:

class A:
def f1(self):
A.f2(self)

def f2(self):
pass

关于python - 如何重写两个相互调用的方法,同时使用 super() 访问基类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50138422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com