我有兩個嵌套列表:Python的SUMPRODUCT
a = [[1,2,3],[2,4,2]]
b = [[5,5,5],[1,1,1]]
我想繁殖和SUMPRODUCT各組元素得到
c = [[30],[8]]
從= [[1*2+2*5+3*5],[2*1,4*1,2*1]]
這導致我試過了:
c = sum(x * y for x, y in zip(a, b))
但我得到「不能乘以類型'列表'的非int的序列」
是否有一個簡單的列表理解方式來避免循環?
而應該首先嚐試將它與循環寫,並添加一些'print's明白是怎麼回事。當你理解它時,你可以用更簡潔的方式重寫它。 –
嗯... 1 * 2 + 2 * 5 + 3 * 5 = 30是怎麼回事?操作順序說「乘,然後加」,所以它應該是2 + 10 + 15 = 27,對嗎? – willnx
看起來你正在嘗試做矩陣乘法。如果是這樣,你可能想在'numpy'中開始使用多維數組。 – Bill