You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tabulate库输出的表格格式混乱,求规整对齐方法

解决tabulate库输出表格行列错位问题

问题原因

你的代码里data变量定义的末尾多了一个多余的逗号,导致data变成仅包含单个列表元素的元组,tabulate解析时错误地把这个元组当成单行数据,最终出现所有内容挤在一行的错位格式。

修正后的代码

from tabulate import tabulate

# 模拟示例数据(替换为你的实际变量即可)
stdvzero3, stdavgzero3 = 0.1027, 387.4733
stdva3, stdavga3 = 27.756, 546.123
stdvb3, stdavgb3 = 173.254, 4608.491
stdvc3, stdavgc3 = 52.377, 847.775
stdvd3, stdavgd3 = 170.961, 1623.217
stdve3, stdavge3 = 491.289, 2938.067
stdvf3, stdavgf3 = 173.254, 4608.491

# 去掉末尾多余的逗号,规整列表格式
data = [
    [1, 'Zero', "%0.4f" % stdvzero3, "%0.4f" % stdavgzero3],
    [2,'Std A', "%0.3f" % stdva3, "%0.3f" % stdavga3],
    [3,'Std B', "%0.3f" % stdvb3, "%0.3f" % stdavgb3],
    [4,'Std C', "%0.3f" % stdvc3, "%0.3f" % stdavgc3],
    [5,'Std D', "%0.3f" % stdvd3, "%0.3f" % stdavgd3],
    [6,'Std E', "%0.3f" % stdve3, "%0.3f" % stdavge3 ],
    [7,'Std F', "%0.3f" % stdvf3, "%0.3f" % stdavgf3]
]

print(tabulate(data, headers=["No", "Type", "STD_N2O", "Mean_N2O"], tablefmt='simple'))

正确输出效果

No  Type    STD_N2O    Mean_N2O
----  ------  ---------  -----------
   1  Zero    0.1027     387.4733
   2  Std A   27.756     546.123
   3  Std B   173.254    4608.491
   4  Std C   52.377     847.775
   5  Std D   170.961    1623.217
   6  Std E   491.289    2938.067
   7  Std F   173.254    4608.491

内容的提问来源于stack exchange,提问作者Zahra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 16:40:38