Python 如何在循环中连接超过2个数组(变量)(其中一个在第一个循环中为空)

Python 如何在循环中连接超过2个数组(变量)(其中一个在第一个循环中为空),python,matlab,numpy-ndarray,Python,Matlab,Numpy Ndarray,我想用Python实现这个函数,比如Matlab 在matlab中,代码是 A = []; for ii = 0:9 B = [ii, ii+1, ii**2]; C = [ii+ii**2, ii-5]; A = [A, B, C]; end 但是在Python中,使用np.hstack或np.concatenate,ndarray必须具有相同的维度数 如果第一个循环中的A为空,代码将出错如下: for ii in range(10): B = np.arra

我想用Python实现这个函数,比如Matlab

在matlab中,代码是

A = [];
for ii = 0:9
    B = [ii, ii+1, ii**2];
    C = [ii+ii**2, ii-5];
    A = [A, B, C];
end
但是在Python中,使用np.hstack或np.concatenate,ndarray必须具有相同的维度数

如果第一个循环中的A为空,代码将出错如下:

for ii in range(10):
    B = np.array([ii, ii+1, ii**2])
    C = np.array([ii+ii**2, ii-5])
        if ii == 0:
            A = np.hstack([B, C])
        else:
            A = np.hstack([A, B, C])
这是我的Python代码,B和C是变量,而不是重复,请不要结束我的问题

for ii in range(10):
    B = np.array([ii, ii+1, ii**2])
    C = np.array([ii+ii**2, ii-5])
    if ii == 0:
        A = np.hstack([B, C])
    else:
        A = np.hstack([A, B, C])
但是,我觉得它有点麻烦和不可读


如何重写它?(最好只使用一行代码)

而不知道结果应该是什么-我认为这很接近

将numpy导入为np
q=np.arange(10)
bs=np.vstack((q,q+1,q**2)).T
cs=np.vstack((q,q**2,q-5)).T
a=np.hstack((bs,cs))
或者可能:

a=np.hstack((bs,cs)).ravel()

在不知道结果应该是什么的情况下-我认为这很接近

将numpy导入为np
q=np.arange(10)
bs=np.vstack((q,q+1,q**2)).T
cs=np.vstack((q,q**2,q-5)).T
a=np.hstack((bs,cs))
或者可能:

a=np.hstack((bs,cs)).ravel()

结果应该是什么?结果应该是什么?