在向量的運(yùn)算中,求向量夾角是一項(xiàng)非常基礎(chǔ)和重要的任務(wù)。而 Python 作為一種廣泛使用的編程語言,可以輕松地實(shí)現(xiàn)向量夾角的計算。本文將介紹如何使用 Python 計算向量夾角。
# 計算向量夾角的 Python 代碼 import math def get_angle(vector1, vector2): # 向量點(diǎn)積 dot_product = sum(a*b for a, b in zip(vector1, vector2)) # 向量長度 length1 = math.sqrt(sum(a*a for a in vector1)) length2 = math.sqrt(sum(b*b for b in vector2)) # 余弦值 cos_value = dot_product / (length1 * length2) # 轉(zhuǎn)化為角度 angle = math.degrees(math.acos(cos_value)) return angle # 示例 vector1 = [1, 1] vector2 = [1, 0] angle = get_angle(vector1, vector2) print(angle)
上述代碼中的函數(shù)get_angle
計算了兩個向量之間的夾角(以度數(shù)為單位)。首先,向量點(diǎn)積表示了兩個向量的相似程度。將它們的點(diǎn)積除以它們的長度的乘積,可以得到它們的余弦值。最后,將余弦值轉(zhuǎn)化為角度,即可得到它們的夾角。
在代碼中,我們通過調(diào)用 Python 中的math
模塊,使用了sqrt
和degrees
等數(shù)學(xué)函數(shù),極大地簡化了計算的過程。而zip
函數(shù)則能夠方便地對兩個向量進(jìn)行遍歷和計算。
通過使用 Python,我們可以很容易地計算出向量之間的夾角,這大大方便了向量應(yīng)用的實(shí)現(xiàn),也加速了向量相關(guān)算法的開發(fā)進(jìn)程。