如何定义一个函数,A(1,0),B(2,0),C(3,0),D(4.0).....N(n,0)这一堆点,上一个点减去后一个点为一个向量,并用i1,i2,i3....in区分出每条向量
时间: 2023-11-27 10:53:39 浏览: 51
你可以定义一个函数 `vector_points`,该函数接受一个整数 `n`,返回一个包含 `n` 个点的列表,其中每个点都是一个有两个元素的元组,表示二维平面上的坐标。然后你可以定义另一个函数 `vector_list`,该函数接受一个点的列表,并返回一个包含 `n-1` 个向量的列表,每个向量都是由相邻两个点之间的差向量计算而来。最后你可以使用一个字典 `vector_dict` 来存储每个向量,并用 `i1`, `i2`, `i3`, ..., `in-1` 来区分每个向量。
下面是相应的 Python 代码实现:
```python
def vector_points(n):
points = [(i, 0) for i in range(1, n+1)]
return points
def vector_list(points):
vectors = []
for i in range(len(points)-1):
vec = (points[i][0]-points[i+1][0], points[i][1]-points[i+1][1])
vectors.append(vec)
return vectors
def vector_dict(points):
vectors = vector_list(points)
vector_dict = {}
for i, vec in enumerate(vectors):
vector_dict[f"i{i+1}"] = vec
return vector_dict
```
使用示例:
```python
n = 6
points = vector_points(n)
vectors = vector_list(points)
vector_dict = vector_dict(points)
print("Points:", points)
print("Vectors:", vectors)
print("Vector Dict:", vector_dict)
```
输出:
```
Points: [(1, 0), (2, 0), (3, 0), (4, 0), (5, 0), (6, 0)]
Vectors: [(-1, 0), (-1, 0), (-1, 0), (-1, 0), (-1, 0)]
Vector Dict: {'i1': (-1, 0), 'i2': (-1, 0), 'i3': (-1, 0), 'i4': (-1, 0), 'i5': (-1, 0)}
```
阅读全文