代码示例如下:
import math
def dot_product_and_angle(vector1, vector2):
dot_product = sum([vector1[i] * vector2[i] for i in range(len(vector1))])
vector1_norm = math.sqrt(sum([vector1[i] ** 2 for i in range(len(vector1))]))
vector2_norm = math.sqrt(sum([vector2[i] ** 2 for i in range(len(vector2))]))
cosine = dot_product / (vector1_norm * vector2_norm)
angle = math.acos(cosine)
return dot_product, angle
vector1 = [1, 2, 3]
vector2 = [4, 5, 6]
dot_product, angle = dot_product_and_angle(vector1, vector2)
print("两个向量的点积为:", dot_product)
print("两个向量之间的夹角为:", angle, "弧度")
输出结果为:
两个向量的点积为: 32
两个向量之间的夹角为: 0.2257261285527342 弧度
本函数使用向量的长度和乘积的余弦值来计算两个向量之间的夹角。这个函数将两个向量作为参数传递,并返回点积和夹角两个值。