python 编写程序,输入两个包含若干整数的列表,把这个两个列表看做两个向量,输出这两个向量的内积。如果列表长度不一致,则以较短的列表为标准。 比如[1,2,3,4,51和[4,5,6]的内积就是:1*4+2*5+3*6的结果 就是32。运行样例如下所示:
时间: 2023-06-25 14:01:58 浏览: 68
编写程序,输入两个分别包含若干整数的列表LA、LB.py
5星 · 资源好评率100%
可以通过以下代码实现所需功能:
```python
def dot_product(a, b):
"""
计算两个向量的内积
:param a: 向量a,为一个列表
:param b: 向量b,为一个列表
:return: 两个向量的内积
"""
# 取两个向量中长度较短的那个作为基准
n = min(len(a), len(b))
# 初始化内积为0
dot = 0
# 计算内积
for i in range(n):
dot += a[i] * b[i]
# 返回内积
return dot
# 示例用法
a = [1, 2, 3, 4, 5]
b = [4, 5, 6]
print(dot_product(a, b)) # 输出32
```
以上代码定义了一个 `dot_product` 函数,接受两个列表作为参数,返回它们的内积。函数首先取两个列表中长度较短的那个作为基准,然后遍历这个基准列表,将每一项乘以对应项相乘的结果累加到内积中。最后返回内积即可。
阅读全文