Как и в комментариях, если вы хотите взять произведение двух матриц, то numpy уже имеет эффективную реализацию этого, но это может быть слишком медленным для вас (O (n ^ 3)).
import numpy as np
a=np.array([3,2,1])
b=np.array([1,2,3])
c=a.dot(b)
print(c) #output = 10
Я видел в комментариях, что вас интересует косинусное расстояние между векторами. Для сходства косинусов рассмотрим использование Scipy:
from scipy.spatial.distance import cosine
a=[1,0,1]
b=[0,1,0]
print(cosine(a,b)) #output = 1.0
Это может быть быстрее для ваших нужд. Вот документация .