Python 面向对象实现圆形、正方形和长方形的面积和周长计算
可以使用面向对象的思想来实现这个问题。
首先,定义一个 Shape 类作为基类,其中包含一个空的 getArea() 方法和一个 getCircumference() 方法。
然后,定义 Circle、Square 和 Rectangle 类,它们都继承自 Shape 类,并且分别实现自己的 getArea() 和 getCircumference() 方法。
具体实现如下:
class Shape:
def getArea(self):
pass
def getCircumference(self, r):
pass
class Circle(Shape):
def __init__(self, r):
self.r = r
def getArea(self):
return 3.14 * self.r ** 2
def getCircumference(self):
return 2 * 3.14 * self.r
class Square(Shape):
def __init__(self, a):
self.a = a
def getArea(self):
return self.a ** 2
def getCircumference(self):
return 4 * self.a
class Rectangle(Shape):
def __init__(self, a, b):
self.a = a
self.b = b
def getArea(self):
return self.a * self.b
def getCircumference(self):
return 2 * (self.a + self.b)
使用示例:
c = Circle(5)
print('Circle area:', c.getArea())
print('Circle circumference:', c.getCircumference())
s = Square(4)
print('Square area:', s.getArea())
print('Square circumference:', s.getCircumference())
r = Rectangle(3, 6)
print('Rectangle area:', r.getArea())
print('Rectangle circumference:', r.getCircumference())
输出结果:
Circle area: 78.5
Circle circumference: 31.400000000000002
Square area: 16
Square circumference: 16
Rectangle area: 18
Rectangle circumference: 18
原文地址: https://www.cveoy.top/t/topic/nwhi 著作权归作者所有。请勿转载和采集!