封装点Point类和线段Line,点有x,y属性;线段有起点和终点,主程序中创优两个点,用这两个点创建一条线段,输出线段的长度。要求:类封装完整,结果输出正确
时间: 2024-09-20 14:16:20 浏览: 51
在Python中,我们可以创建名为`Point`和`Line`的类来实现这个需求。首先,我们定义`Point`类,它有两个属性`x`和`y`:
```python
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
# 定义距离方法,用于计算两点间的距离
def distance(self, other_point):
return ((self.x - other_point.x) ** 2 + (self.y - other_point.y) ** 2) ** 0.5
```
接着,我们定义`Line`类,它包含两个`Point`对象作为起始点和结束点,并有一个方法来获取线段长度:
```python
class Line:
def __init__(self, start, end):
self.start = start
self.end = end
# 计算线段长度
def length(self):
return self.start.distance(self.end)
```
现在,在主程序中,我们可以这样创建并操作线段:
```python
# 创建两个点
point_a = Point(0, 0)
point_b = Point(3, 4)
# 创建线段
line = Line(point_a, point_b)
# 输出线段长度
length = line.length()
print(f"线段的长度是 {length}")
```
当运行这段代码时,会输出线段AB的长度。
阅读全文