Python 如何堆叠多个Astropy表

Python 如何堆叠多个Astropy表,python,numpy,astropy,Python,Numpy,Astropy,我有一个for循环,它生成几个变量,比如a,b,和c。我想 在for循环通过循环后垂直堆叠变量。这是我想做的。(举例来说,假设变量只是数字(1,2,3)) 当我打印t时 a b c --- --- --- 0.0 0.0 0.0 1.0 1.0 1.0 2.0 2.0 2.0 我想得到的是: a b c --- --- --- 0.0 0.0 0.0 1.0 1.0 1.0 2.0 2.0 2.0 0.0 0.0 0.0 1.0 1.0 1.0 2.0 2.0 2.0

我有一个for循环,它生成几个变量,比如
a
b
,和
c
。我想 在for循环通过循环后垂直堆叠变量。这是我想做的。(举例来说,假设变量只是数字(1,2,3))

当我
打印t

 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
我想得到的是:

 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0

非常感谢你的帮助

例如,如果希望行数重复n=5次,只需使用
vstack
,类似于
numpy.vstack
,如下所示:

>>>from astropy.table import vstack
>>>t1=vstack([t,t,t,t,t])
>>>print t1

 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0

顺便说一句,我更新了你问题的标题,没有提到“for循环”。一般来说,一个好问题问的是你真正想要实现的目标,而不是你认为你想要实现目标的方式(这可能不是最好的答案)。在这种情况下,根本没有理由使用for循环:)
>>>from astropy.table import vstack
>>>t1=vstack([t,t,t,t,t])
>>>print t1

 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0