map
この機能を使用しsum
て達成することはできますが、どのように使用するのreduce
ですか?
2 つのリストがあります: a
、b
、同じ数の値があります。計算したい
a[0]*b[0]+a[1]*b[1]+...+a[n]*b[n]
私が使用して書いた作業バージョンmap
は
value = sum(map(lambda (x,y): x*y, zip(a, b)))
じゃあどうやって使うのreduce
?私が書いた:
value = reduce(lambda (x,y): x[0]*y[0] + x[1]*y[1], zip(a, b)))
エラー " TypeError: 'float' object is unsubscriptable
" が発生しました。
誰でもこれに光を当てることができますか?