我的问题很简单。我必须制作一个5 * 5矩阵,每个i,j值都应遵循i + j的公式
到目前为止,我有: '''
w = np.zeros(shape=(5,5))
print(w)
for i in range(5):
for j in range(5):
w[i][j] == i**2+j
print(w)
但是它现在只返回0矩阵怎么办?
分析解答
只是改变
w[i][j] == i**2+j
到(如果要保留公式)
w[i,j] = i**2+j
或使用您问题中的公式
w[i,j] = i+j
如果要摆脱循环,可以使用numpy
w = np.arange(5)
w = np.add.outer(w ** 2, w)
print(w)
出:
[[ 0 1 2 3 4]
[ 1 2 3 4 5]
[ 4 5 6 7 8]
[ 9 10 11 12 13]
[16 17 18 19 20]]