Python 从行向量和列向量numpy生成矩阵

Python 从行向量和列向量numpy生成矩阵,python,numpy,Python,Numpy,我有两个numpy阵列: a = [ (0,0,255), (0,0,0), (0,255,0), (255,0,0) ] b = [ (0,0,255), (0,0,0), (0,255,0), (255,0,0) ] 如何使用numpy获得以下矩阵: [ [ (0,0,255), (0,0,255), (0,0,0), (0,255,0), (255,0,0) ],

我有两个numpy阵列:

    a = [ (0,0,255), (0,0,0), (0,255,0), (255,0,0) ]

    b = [
         (0,0,255),
         (0,0,0),
         (0,255,0),
         (255,0,0)
        ]
如何使用numpy获得以下矩阵:

    [
     [ (0,0,255), (0,0,255), (0,0,0), (0,255,0), (255,0,0) ],
     [ (0,0,0), (0,0,255), (0,0,0), (0,255,0), (255,0,0) ],
     [ (0,255,0), (0,0,255), (0,0,0), (0,255,0), (255,0,0) ],
     [ (255,0,0), (0,0,255), (0,0,0), (0,255,0), (255,0,0) ]
    ]
我正在尝试对图像中的所有像素进行成对像素比较。

简单的pythonic方法:

z = [[i] + a for i in b]

下面是使用
numpy

In []: a = np.asarray([ (0,0,255), (0,0,0), (0,255,0), (255,0,0) ])
In []: b= np.asarray([(0,0,255), (0,0,0), (0,255,0), (255,0,0)])
In []: np.array([np.vstack((a[i],b)) for i,v in enumerate(a)])
Out[]: 
array([[[  0,   0, 255],
        [  0,   0, 255],
        [  0,   0,   0],
        [  0, 255,   0],
        [255,   0,   0]],

       [[  0,   0,   0],
        [  0,   0, 255],
        [  0,   0,   0],
        [  0, 255,   0],
        [255,   0,   0]],

       [[  0, 255,   0],
        [  0,   0, 255],
        [  0,   0,   0],
        [  0, 255,   0],
        [255,   0,   0]],

       [[255,   0,   0],
        [  0,   0, 255],
        [  0,   0,   0],
        [  0, 255,   0],
        [255,   0,   0]]])

为什么第二个轴的长度是
5
?那么,a等于b?有什么问题吗?