当出现捕获到的TypeError错误提示“class继承中的this.MyClass不是一个对象或为空”,通常是因为在类的继承中,可能存在以下问题:
忘记调用父类的构造函数:
class ParentClass:
def __init__(self):
self.value = 10
class ChildClass(ParentClass):
def __init__(self):
super().__init__() # 调用父类的构造函数
self.child_value = 20
obj = ChildClass()
print(obj.value) # 正确输出:10
print(obj.child_value) # 正确输出:20
父类没有被正确导入:
from parent_module import ParentClass
class ChildClass(ParentClass):
def __init__(self):
super().__init__()
self.child_value = 20
obj = ChildClass()
父类的名称错误:
class ParentClass:
def __init__(self):
self.value = 10
class ChildClass(Parent): # 错误:父类名称应为ParentClass
def __init__(self):
super().__init__()
self.child_value = 20
obj = ChildClass()
请确保在类的继承中正确调用父类的构造函数,并确保父类的名称被正确导入和使用。