所以我需要找出矩形的面积。我必须在矩形类中放入一个名为“calrea()”的方法,它将宽度*高度相乘。我不知道怎么做这件事,我很迷茫,这本书根本没有解释怎么做。我的代码是:
class Point():
x = 0.0
y = 0.0
def __init__(self, x, y):
self.x = x
self.y = y
print("Point Constructor")
def ToString(self):
return "{X:" + str(self.x) + ",Y:" + str(self.y) + "}"
class Ellipse(Point):
radiusV = 0.0
radiusH = 0.0
def __init__(self, x, y, radiusV, radiusH):
super().__init__(x,y)
self.radiusV = radiusV
self.radiusH = radiusH
print("Ellipse Constructor")
def ToString(self):
return super().ToString() + \
",{Radius: Vertical = " + str(self.radiusV) + ", Radius: Horizontal = " + str(self.radiusH) + "}"
p = Point(50,50)
print(p.ToString())
e = Ellipse(80,80,60,80)
print(e.ToString())
class Size():
width = 0.0
height = 0.0
def __init__(self, width, height):
self.width = width
self.height = height
print ("Size Constructor")
def ToString(self):
return "{Width = " + str(self.width) + \
", Height = " + str(self.height) + "}"
class Rectangle(Point, Size):
area = 0.0
def __init__(self, x, y, width, height):
Point.__init__(self,x,y)
Size.__init__(self,width,height)
print("Rectangle Constructor")
def ToString(self):
return Point.ToString(self) + "," + Size.ToString(self) +
s = Size (80,70)
print(s.ToString())
r = Rectangle(200,250,40,50)
print(r.ToString())
在您的
Rectangle
类中使用以下方法要打印区域,只需调用
print mRectangle.calcArea()
其中
mRectangle
是Rectangle
类的一个实例。在self.width
和{Rectangle
继承了Size
类,Size
在其构造函数中适当设置了实例变量width
和{Rectangle
是Size
的子类。在另外,你的大小类中的}可能并没有完全按照你的想法来做。它们是Python中的静态或类变量,与}完全不同,这里有一个例子来说明这一点
^{pr2}$width = 0
和{self.width
和{在python中,可以使用语法
ClassName.Variable
访问类或静态变量,并且可以在不创建该类的对象的情况下进行访问。Where作为实例变量只能与类的实例一起调用。在相关问题 更多 >
编程相关推荐