Python - 如何用向量形式表达这个
def compute(c, r):
s = 0;
l = len(c);
for i in range(l):
s = s + c[i]*f(r[i]);
return s
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。
1 个回答
3
我不太明白你说的向量形式是什么意思(除非你在用numpy?),不过我会这样写你的函数:
def compute(c, r):
return sum(x*f(y) for x,y in zip(c,r))
如果你在用numpy的话,可以使用整个数组的表达式,而不是生成器表达式,但在这种情况下,c
和 r
必须是numpy数组:
def compute(c, r):
return (c*f(r)).sum()