Here is one with np.dstackand reshape-
np.dstack((A,B)).reshape(-1,A.shape[1]*2)
Run Example -
In [44]: A
Out[44]:
array([[2, 7, 3, 0, 8],
[1, 0, 6, 7, 6],
[3, 4, 7, 7, 6],
[0, 3, 7, 5, 4]])
In [45]: B
Out[45]:
array([[8, 4, 3, 8, 0],
[3, 1, 8, 8, 2],
[8, 5, 8, 8, 4],
[1, 0, 6, 1, 7]])
In [46]: np.dstack((A,B)).reshape(-1,A.shape[1]*2)
Out[46]:
array([[2, 8, 7, 4, 3, 3, 0, 8, 8, 0],
[1, 3, 0, 1, 6, 8, 7, 8, 6, 2],
[3, 8, 4, 5, 7, 8, 7, 8, 6, 4],
[0, 1, 3, 0, 7, 6, 5, 1, 4, 7]])