【发布时间】:2020-10-11 22:39:43
【问题描述】:
我是 Python 新手,正在尝试使用 zip 执行 2 个向量的点积。
from typing import List
vector = List[float]
def dot_prod(v:vector,w:vector) -> float:
return sum(v_i*w_i for v_i,w_i in zip(v,w))
dot_prod([1,2,3],[4,5,6])
我收到以下错误:TypeError: 'generator' object is not callable
非常感谢您对解决此问题的任何帮助...谢谢!
【问题讨论】:
-
乍一看似乎没问题。
-
第二个@MateenUlhaq,这在我的机器上按预期运行(python 3.8)
-
代码似乎很好,也可以在 Python 3.7.5 上运行。你运行的是什么版本的 Python?
-
您是否重新定义了
sum或zip?发布的代码适用于对 Python 3 的干净调用。 -
谢谢大家。它必须与@TomKarzes 问题有关。我开始了一个新会话,并且能够毫无问题地执行。
标签: python vector typeerror dot-product