我是一位OOP的初學者,一直試圖用Python3自學一些它的概念。但是,我已經陷入了繼承。這是我的源代碼:Python 3繼承
#! /usr/bin/env python3
class TwoD:
def __init__(self, height, width):
self.h = height
self.w = width
def perimeter(self, height, width):
return 2 * (height + width)
def area(self, height, width):
return height * width
class Cuboid(TwoD):
def __init__(self, height, width, depth):
self.d = depth
def volume(self, height, width, depth):
return height * width * depth
x = Cuboid(3, 4, 5)
print(x.volume())
print(x.perimeter())
print(x.area())
我運行它時得到的錯誤如下。它看起來好像我需要向卷添加參數,但不提供它所需的變量?
Traceback (most recent call last):
File "./Class.py", line 19, in <module>
print(x.volume())
TypeError: volume() missing 3 required positional arguments: 'height', 'width', and 'depth'
所以有人請讓我知道我做錯了什麼。我相信這是愚蠢的。另外,有人可以解釋我將如何去在Python3中使用多繼承?
在此先感謝
請用4個空格替換您的所有選項卡。 –