python - 我如何在python中创建检查列表是否为向量的函数
问题描述
我的任务是实现一个parallel_vec(lst1, lst2)
带有 2 个参数的函数lst1
,这些参数是代表两个向量lst2
的长度列表。n
True
如果向量“平行”,则函数将返回,否则False
。
的定义:如果所有分量之间的比率相同,则parallel vectors
两个向量v1 = (n1, n2, n3)
和是平行向量,定义为v2 = (k1, k2, k3)
n1 / k1 = n2 / k2 = n3 / k3
这是我写的:
lst1 = [1,3,4]
lst2 = [2,6,8]
ind1 = 0
ind2 = 1
while ind2 < len(lst1):
if (lst1[ind1]/lst2[ind1]) == (lst1[ind2]/lst2[ind2]):
ind1 += 1
ind2 += 1
continue
print(True)
#return True
else:
print(False)
我还没有运行它,因为我想检查它是否工作,但它没有。我究竟做错了什么?
解决方案
创建分数列表n1/k1, n2/k2, n3/k3
>>> [1.0, 1.0, 1.0]
然后用于set
删除重复项(这意味着比率相同)
那么如果这个新的列表长度为==
1,则向量是平行的
lst1 = [1,3,4]
lst2 = [2,6,8]
vect = [(x/y) for x,y in zip(lst1,lst1)]
if len(set(vect)) == 1:
print(True)
else:
print(False)
推荐阅读
- javascript - 使用 Dicer 将异步数据部分排序到文件中
- snowflake-cloud-data-platform - 找不到用户定义的函数
- google-apps-script - 如何以编程方式在 Google 文档中的特定位置添加表格?
- html - 如何使小 div 上的边框半径与大 div 相同
- powerbi - 计算 Power BI 中每个日期的不同 ID
- ckan - CKAN2.9 向数据集(包)表单添加上传字段
- python - expiringdict,在到期前打印
- c - 从动态库调用函数?
- keyboard - 自定义内置背光笔记本电脑键盘
- sql - Postgres 将全名拆分为 3 部分 First Middle Last