Calcular el producto de puntos de dos vectores sin usar bibliotecas adicionales

Me gustaría escribir una función para calcular el producto punto de dos vectores sin usar bibliotecas adicionales. A continuación es un bash que hice. ¿Alguien puede señalar las fallas en mi código?

def dot(vector01,vector02): result= [] for i in range(len(vector01), len(vector02)): total = 0 total += vector01[i] * vector02[i] result.append(total) return result if len(vector01) == len(vector02): return result else: print(error) vector01 = [2, 3, 4] vector02 = [4, 2, 1] print(dot(vector01,vector02)) 

 def dot(v1,v2): if len(v1) != len(v2): raise ValueError return sum(i1*i2 for i1,i2 in zip(v1,v2))