Python 如何格式化没有行标签的表格数据?

Python 如何格式化没有行标签的表格数据?,python,formatting,Python,Formatting,例如,现在的输出是: Temp [C] v [m3/kg] u [kJ/kg] s [kJ/kgK] Temp [C] 1 2 1 3 v [m3/kg] 0 1 0 3 u [kJ/kg] 2 4 2

例如,现在的输出是:

                Temp [C]   v [m3/kg]   u [kJ/kg]  s [kJ/kgK]
    Temp [C]           1           2           1           3
   v [m3/kg]           0           1           0           3
   u [kJ/kg]           2           4           2           3
  s [kJ/kgK]           2           4           2           3
我希望它看起来像:

    Temp [C]   v [m3/kg]   u [kJ/kg]  s [kJ/kgK]
    1           2           1           3
    0           1           0           3
    2           4           2           3
    2           4           2           3
以下是我当前使用的代码:

units = ['Temp [C]', 'v [m3/kg]', 'u [kJ/kg]', 's [kJ/kgK]']
data = ([1, 2, 1, 3], [0, 1, 0, 3], [2, 4, 2,3], [2, 4, 2,3])

format_row = "{:>12}" * (len(units) + 1)
print(format_row.format("", *units))
for unit, row in zip(units, data):
    print(format_row.format(unit, *row))

当我尝试右对齐(fmt_string='{:>15}'*len(units))时,我的输出会向右移动,包括开始部分。如何修复此问题?@quilicam您可以更改它
fmt_string='{:
units = ['Temp [C]', 'v [m3/kg]', 'u [kJ/kg]', 's [kJ/kgK]']
data = ([1, 2, 1, 3], [0, 1, 0, 3], [2, 4, 2,3], [2, 4, 2,3])

fmt_string = '{:<15}' * len(units)
print(fmt_string.format(*units))
for row in data:
    print(fmt_string.format(*row))
Temp [C]        v [m3/kg]       u [kJ/kg]       s [kJ/kgK]     
1               2               1               3              
0               1               0               3              
2               4               2               3              
2               4               2               3