2(1)定义类Shape作为父类,并在类中定义方法求周长和面积; (2)定义Shape子类圆形(circle),具有半径属性和常量PI,同时重写父类中的方法; (3)定义Shape子类长方形(rectangle),具有长和宽的属性,同时重写父类的方法; (4)创建图形面积周长计算器(ShapeCalculate),具有计算不同图形面积和周长的方法。 (5)对ShapeCalculate计算面积和周长方法进行测试。
class Shape():
def zhouchang(self):
pass
def mianji(self):
pass
class Circle(Shape):
PI = 3.14
def __init__(self, radius):
self.radius = radius
def zhouchang(self):
return 2 * self.PI * self.radius
def mianji(self):
return self.PI * self.radius ** 2
class Rectangle(Shape):
def __init__(self, c, k):
self.c = c
self.k = k
def zhouchang(self):
return 2 * (self.c + self.k)
def mianji(self):
return self.c * self.k
def ShapeCalculate(a):
s = a.mianji()
z = a.zhouchang()
print('周长是{},面积是{}'.format(s, z))
aa = Circle(4)
bb = Rectangle(3, 4)
ShapeCalculate(aa)
ShapeCalculate(bb)