super(Net, self).__init__()什么意思
时间: 2023-11-28 14:03:48 浏览: 30
这段代码是Python中用于继承父类构造函数的写法。`super()`函数返回一个临时对象,这个临时对象可以调用父类的方法。在这段代码中,`Net`是子类,`self`是子类的实例。`__init__()`是父类的构造函数。`super(Net, self).__init__()`的意思是调用`Net`的父类的构造函数,也就是调用父类的`__init__()`方法,并且将`self`作为参数传递给这个方法。这样可以在子类中使用父类的构造函数,从而避免代码重复。
相关问题
super().__init__()和super(deblurNet,self).__init__()区别
`super().__init__()`和`super(deblurNet,self).__init__()`都是调用父类的构造函数,但是它们的实现方式略有不同。
`super().__init__()`是使用不带参数的`super()`函数来调用父类的构造函数,这种方式比较简洁,不需要显式地指定当前类的名称和对象。
`super(deblurNet,self).__init__()`则是显式地指定当前类的名称和对象,使用带参数的`super()`函数来调用父类的构造函数。其中,`deblurNet`是当前类的名称,`self`是当前类的对象。
总的来说,使用`super().__init__()`比较简洁,并且不需要显式地指定当前类的名称和对象,但是如果需要在多重继承的情况下调用指定的父类构造函数,就需要使用带参数的`super()`函数。
super().__init__() 、 super(B,self).__init__()
super().__init__() 是在一个子类的构造函数中调用其父类的构造函数。它用于初始化父类的属性和方法,以便子类能够继承并使用它们。
super(B, self).__init__() 是在子类 B 的构造函数中调用其父类 A 的构造函数。它的作用和 super().__init__() 相同,但是在多重继承的情况下,可以指定要调用哪个父类的构造函数。
需要注意的是,调用父类的构造函数应该放在子类构造函数的开头,以确保父类的属性和方法在子类中正确地初始化。