Skip to main content
 首页 » 编程设计

python之我的 numpy 数组总是以零结尾

2025年05月04日11freeliver54

我想我错过了什么地方。我使用两个 for 循环(x 和 y)和一个基于 x,y 位置的函数填充了一个 numpy 数组。唯一的问题是无论数组的大小如何,数组的值总是以零结尾。

thetamap = numpy.zeros(36, dtype=float) 
thetamap.shape = (6, 6) 
for y in range(0,5): 
    for x in range(0,5): 
        thetamap[x][y] =  x+y 
print thetamap 

请您参考如下方法:

range(0, 5) 产生 0, 1, 2, 3, 4。端点总是被省略。您只需要 range(6)。

更好的是,使用 NumPy 的强大功能 将数组放在一行中:

thetamap = np.arange(6) + np.arange(6)[:,None] 

这会产生一个行向量和一个列向量,然后使用 NumPy 广播将它们加在一起形成一个矩阵。