使用For循环结果在Python中创建二维数组

我在for循环中运行一些代码.我想从循环中获取结果并将它们放在一个2列数组中,其中包含2列和多次行迭代循环.这是我所拥有的简化版本:

 for i in range(10):

      'bunch of stuff'

      centerx = xc
      centery = yc

如何在具有2列和10行的2d数组中保存centerx和centery的值?任何帮助表示赞赏,谢谢!

最佳答案 你可以试试这个:

import numpy as np
listvals = []
for i in range(10):
    listvals.append((xc, yc))
mat_vals = np.vstack(listvals)

这将输出如下的ndarray:

[[ 2  0]
 [ 3  1]
 [ 4  2]
 [ 5  3]
 [ 6  4]
 [ 7  5]
 [ 8  6]
 [ 9  7]
 [10  8]
 [11  9]]

或者这可能更好:

import numpy as np
list_xc = []
list_yc = []
for i in np.arange(10): 
    list_xc.append(xc)
    list_yc.append(yc)
mat_xc = np.asarray(list_xc)
mat_yc = np.asarray(list_yc)
mat_f = np.column_stack((mat_xc, mat_yc))
点赞