python设计一个几何图形类,有name属性和计算面积的方法,在设计三个类三角形 正方形 圆形
时间: 2023-08-18 20:07:57 浏览: 174
好的,以下是Python中设计的几何图形类:
```python
import math
class Geometry:
def __init__(self, name):
self.name = name
def area(self):
pass
class Triangle(Geometry):
def __init__(self, name, a, b, c):
super().__init__(name)
self.a = a
self.b = b
self.c = c
def area(self):
s = (self.a + self.b + self.c) / 2
return math.sqrt(s * (s - self.a) * (s - self.b) * (s - self.c))
class Square(Geometry):
def __init__(self, name, a):
super().__init__(name)
self.a = a
def area(self):
return self.a * self.a
class Circle(Geometry):
def __init__(self, name, r):
super().__init__(name)
self.r = r
def area(self):
return math.pi * self.r * self.r
```
这里我们定义了一个基础的`Geometry`类,它包含一个`name`属性和一个`area`方法。然后我们定义了三个继承自`Geometry`类的子类:`Triangle`,`Square`和`Circle`。
每个子类都有自己的构造函数,以及一个计算面积的方法。例如`Triangle`类的`area`方法使用海龙公式计算三角形的面积。
这个设计可以让我们方便地创建各种几何图形,并计算它们的面积。例如,我们可以创建一个三角形对象:
```python
t = Triangle("Triangle", 3, 4, 5)
print(t.area()) # 输出 6.0
```
同样,我们可以创建正方形和圆形对象,并计算它们的面积。
阅读全文