定义一个圆类(Circle),属性为半径(ra dius),操作计算周长、面积,输出半径、周长和面积等,其他可自行设计。 以圆类Circle为基类,派生一个派生类一 -圆柱体类(cylinder),输出圆柱体的面积、体积。
时间: 2023-06-12 22:03:58 浏览: 217
以下是圆类和圆柱体类的代码实现:
```python
import math
# 圆类
class Circle:
def __init__(self, radius):
self.radius = radius
def get_radius(self):
return self.radius
def get_circumference(self):
return 2 * math.pi * self.radius
def get_area(self):
return math.pi * self.radius ** 2
def __str__(self):
return f"Radius: {self.radius}\nCircumference: {self.get_circumference()}\nArea: {self.get_area()}"
# 圆柱体类
class Cylinder(Circle):
def __init__(self, radius, height):
super().__init__(radius)
self.height = height
def get_volume(self):
return self.get_area() * self.height
def get_surface_area(self):
return 2 * self.get_area() + self.get_circumference() * self.height
def __str__(self):
return f"Radius: {self.radius}\nHeight: {self.height}\nSurface Area: {self.get_surface_area()}\nVolume: {self.get_volume()}"
```
我们可以使用以下代码进行测试:
```python
# 创建圆类对象
circle = Circle(5)
# 输出圆的信息
print("Circle:")
print(circle)
# 创建圆柱体类对象
cylinder = Cylinder(5, 10)
# 输出圆柱体的信息
print("Cylinder:")
print(cylinder)
```
输出结果如下:
```
Circle:
Radius: 5
Circumference: 31.41592653589793
Area: 78.53981633974483
Cylinder:
Radius: 5
Height: 10
Surface Area: 471.23889803846896
Volume: 392.69908169872417
```
可以看到,圆类和圆柱体类都能够正确计算周长、面积、体积和表面积,并且能够输出半径、周长、面积、高度、表面积和体积等信息。
阅读全文