PythonNumpy:将列表重塑为重复的二维数组

PythonNumpy:将列表重塑为重复的二维数组,python,arrays,numpy,Python,Arrays,Numpy,我是python新手,我对numpy.reforme有一个问题。我目前有两个类似的值列表: x = [0,1,2,3] y = [4,5,6,7] xx = [[0,0,0,0] [1,1,1,1] [2,2,2,2] [3,3,3,3]] yy = [[4,5,6,7] [4,5,6,7] [4,5,6,7] [4,5,6,7]] 我希望它们在单独的2D数组中,每个项目在原始列表的长度上重复,如下所示: x = [0,1,

我是python新手,我对numpy.reforme有一个问题。我目前有两个类似的值列表:

x = [0,1,2,3]
y = [4,5,6,7]
xx = [[0,0,0,0]
     [1,1,1,1]
     [2,2,2,2]
     [3,3,3,3]]

yy = [[4,5,6,7]
      [4,5,6,7]
      [4,5,6,7]
      [4,5,6,7]]
我希望它们在单独的2D数组中,每个项目在原始列表的长度上重复,如下所示:

x = [0,1,2,3]
y = [4,5,6,7]
xx = [[0,0,0,0]
     [1,1,1,1]
     [2,2,2,2]
     [3,3,3,3]]

yy = [[4,5,6,7]
      [4,5,6,7]
      [4,5,6,7]
      [4,5,6,7]]

有没有一种方法可以使用numpy.reforme实现这一点,或者有没有更好的方法可以使用?如能详细解释,我将不胜感激。谢谢

numpy.meshgrid
将为您执行此操作

注意:从您请求的输出来看,似乎您想要的是
ij
索引,而不是默认的
xy

from numpy import meshgrid

x = [0,1,2,3]
y = [4,5,6,7]
xx,yy=meshgrid(x,y,indexing='ij')

print xx
>>> [[0 0 0 0]
     [1 1 1 1]
     [2 2 2 2]
     [3 3 3 3]]

print yy
>>> [[4 5 6 7]
     [4 5 6 7]
     [4 5 6 7]
     [4 5 6 7]]
以下是
xy
索引,仅供参考

xx,yy=meshgrid(x,y,indexing='xy')

print xx
>>> [[0 1 2 3]
     [0 1 2 3]
     [0 1 2 3]
     [0 1 2 3]]

print yy
>>> [[4 4 4 4]
     [5 5 5 5]
     [6 6 6 6]
     [7 7 7 7]]

这正是
np.meshgrid
所做的