gpt4 book ai didi

python - 运行时错误: RecursionError: maximum recursion depth exceeded while calling a Python object

转载 作者:行者123 更新时间:2023-12-01 02:53:23 25 4
gpt4 key购买 nike

我有许多 foo 类的派生类,我正在尝试将基类的对象实例化为派生类之一。我只想调用基类的构造函数一次。当我尝试执行以下代码时,出现运行时错误:

class foo():
call_once = True
_Bar = None
_BaseClass = None
def __init__(self):
if (self.call_once):
self.call_once = False
self._Bar = bar()
self._BaseClass = _bar

class bar(foo):
def __init__(self):
foo.__init__(self)

bar1 = bar()

最佳答案

发生这种情况是因为 call_once 是一个类变量,但您将 False 分配给 call_once 实例变量。要修复此问题,请检查并将 False 分配给 foo.call_once

class foo():
call_once = True
_Bar = None
_BaseClass = None
def __init__(self):
if (foo.call_once):
foo.call_once = False
self._Bar = bar()
self._BaseClass = _bar

关于python - 运行时错误: RecursionError: maximum recursion depth exceeded while calling a Python object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44493638/

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