一个名为countandPrint的函数,参数为inst,功能是
(1)调用inst.info()输出传入对象的信息
测试数据C1(120)
你这里info没定义啊
class Graph:
def __init__(self, length, width):
self.length = length
self.width = width
def getArea(self):
area = self.length * self.width
return area
def getPerimeter(self):
perimeter = 2 * (self.length + self.width)
return perimeter
def info(self):
area = self.getArea()
perimeter = self.getPerimeter()
print("Length: ", self.length)
print("Width: ", self.width)
print("Perimeter: ", perimeter)
print("Area: ", area)
class Rectangle(Graph):
def __init__(self, width, height):
super().__init__(width, height)
self.width = width
self.height = height
def getArea(self):
area = self.width * self.height
return area
def getPerimeter(self):
perimeter = 2 * (self.width + self.height)
return perimeter
def info(self):
area = self.getArea()
perimeter = self.getPerimeter()
print("Width: ", self.width)
print("Height: ", self.height)
print("Perimeter: ", perimeter)
print("Area: ", area)
class Circle(Graph):
def __init__(self, radius):
super().__init__(radius, radius)
self.radius = radius
def getArea(self):
area = 3.1416 * self.radius ** 2
return area
def getPerimeter(self):
perimeter = 2 * 3.1416 * self.radius
return perimeter
def info(self):
area = self.getArea()
perimeter = self.getPerimeter()
print("Radius: ", self.radius)
print("Perimeter: ", perimeter)
print("Area: ", area)
def countandPrint(inst):
inst.info()
R1 = Rectangle(90, 80)
C1 = Circle(120)
countandPrint(R1)
countandPrint(C1)