【发布时间】:2022-11-18 02:18:38
【问题描述】:
我在 realpython.com 中找到了一段关于 python super() 的代码,但我不明白 Rectangle 和 Triangle 中 super() 的用途是什么在里面如果两个类都没有父类(不继承)。
class Rectangle:
def __init__(self, length, width, **kwargs):
self.length = length
self.width = width
super().__init__(**kwargs)
def area(self):
return self.length * self.width
class Square(Rectangle):
def __init__(self, length, **kwargs):
super().__init__(length=length, width=length, **kwargs)
class Triangle:
def __init__(self, base, height, **kwargs):
self.base = base
self.height = height
super().__init__(**kwargs)
def tri_area(self):
return 0.5 * self.base * self.height
class RightPyramid(Square, Triangle):
...
【问题讨论】: