定义一个线段类,求线段长度和线段中点的坐标
时间: 2024-10-19 10:10:42 浏览: 26
在创建一个线段类时,我们通常会考虑包含两个关键属性:起点`start`和终点`end`。这两个属性可以表示线段的两个端点的坐标,比如`(x1, y1)`和`(x2, y2)`。我们可以定义这样一个简单的线段类:
```python
class Segment:
def __init__(self, start, end):
self.start = start
self.end = end
# 计算线段长度的方法
def length(self):
return ((self.end[0] - self.start[0]) ** 2 + (self.end[1] - self.start[1]) ** 2) ** 0.5
# 计算线段中点坐标的方法
def midpoint(self):
x_mid = (self.start[0] + self.end[0]) / 2
y_mid = (self.start[1] + self.end[1]) / 2
return (x_mid, y_mid)
# 示例用法:
segment = Segment((0, 0), (3, 4))
length = segment.length()
midpoint = segment.midpoint()
print("线段长度:", length)
print("线段中点坐标:", midpoint)
```
在这个例子中,`length()`函数通过欧几里得距离公式计算两点之间的直线距离,而`midpoint()`函数则直接计算两点坐标的平均值来得到中点。
阅读全文