3 回答
TA贡献2041条经验 获得超4个赞
你非常接近。问题是您使用双索引[i][j]来引用嵌套列表。你只需要使用 index i。您的其余代码完全没问题。
x = [[1,2,3],[4,5,6],[7,8,9]]
y = [10,100,1000]
xy = [[] for i in range(3)]
for i in range(3):
for j in range(3):
xy[i] += [y[i] * x[i][j]]
# [[10, 20, 30], [400, 500, 600], [7000, 8000, 9000]]
替代方法是使用append
for i in range(3):
for j in range(3):
xy[i].append(y[i] * x[i][j])
使用 NumPy 的替代方法
import numpy as n
x = np.array([[1,2,3],[4,5,6],[7,8,9]])
y = np.array([10,100,1000])
xy = (x.T*y).T
TA贡献1866条经验 获得超5个赞
我认为这将解决问题,
x = [[1,2,3],[4,5,6],[7,8,9]]
y = [10,100,1000]
xy = []
for i in range(3):
xy.append([])
for j in range(3):
xy[i].append(y[i]*x[i][j])
print (xy)
在 python 中,使用 'list.append()' 将值添加到列表中。
添加回答
举报