AttributeError: 'super' object has no attribute '_DConvBnReLU3D__init'
时间: 2023-11-10 19:07:17 浏览: 105
这个错误通常是由于子类的构造函数没有正确地调用父类的构造函数而导致的。在 Python 中,如果子类定义了自己的构造函数,则必须显式地调用父类的构造函数,否则会出现上述错误。
你可以在子类的构造函数中使用 `super()` 函数来调用父类的构造函数。例如:
```python
class MySubClass(MyBaseClass):
def __init__(self, arg1, arg2, *args, **kwargs):
super().__init__(*args, **kwargs)
self.arg1 = arg1
self.arg2 = arg2
```
在这个例子中,`MySubClass` 是 `MyBaseClass` 的子类,它定义了自己的构造函数,并使用 `super().__init__()` 调用了父类的构造函数。
相关问题
AttributeError: 'super' object has no attribute '_Net__init'
AttributeError: 'super' object has no attribute '_Net__init'是一个Python错误,通常是由于在子类中未正确调用父类的构造函数而导致的。在这种情况下,子类中的__init__方法可能会覆盖父类中的__init__方法,从而导致错误。要解决这个问题,可以在子类的__init__方法中调用父类的__init__方法,以确保正确地初始化父类的属性。例如,可以使用以下代码来调用父类的__init__方法:
```
class ChildClass(ParentClass):
def __init__(self, arg1, arg2):
super().__init__(arg1)
self.arg2 = arg2
```
这将调用父类的__init__方法,并将arg1传递给它,然后在子类中设置arg2属性。这样可以确保正确地初始化父类的属性,并避免出现AttributeError: 'super' object has no attribute '_Net__init'这样的错误。
AttributeError: 'super' object has no attribute '_Generator__init'
AttributeError: 'super' object has no attribute '_Generator__init'是一个Python错误,通常在使用super()函数时出现。这个错误的原因是在使用super()函数时,它无法找到父类的__init__()方法。这可能是由于子类中的__init__()方法覆盖了父类的__init__()方法,或者是由于子类没有正确地调用父类的__init__()方法。要解决这个错误,可以检查子类的__init__()方法是否正确地调用了父类的__init__()方法,或者尝试在子类中显式地调用父类的__init__()方法。
1. 什么是super()函数?
2. Python中的继承机制是什么?
3. 如何避免AttributeError: 'super' object has no attribute '_Generator__init'错误?