如何用PrettyTable创建仅在标题下方显示一条水平线的表格?
如何用PrettyTable实现带标题分隔线的极简表格?
你当前的代码因为设置了header=False,导致hrules=HEADER无法生效(HEADER规则仅作用于表头与内容之间的分隔)。要实现标题下方的分隔线,可通过以下调整:
修改后的代码
from prettytable import PrettyTable, HEADER, NONE output = PrettyTable(align='l') output.title = 'My Table' output.border = False output.hrules = HEADER output.vrules = NONE # 设置与列数匹配的空表头,避免显示表头内容 output.field_names = ['', '', ''] output.add_row([1, 2, 3]) output.add_row([4, 5, 6]) output.add_row([7, 8, 9]) print(output)
输出效果
My Table ----------- 1 2 3 4 5 6 7 8 9
调整说明
- 移除
header=False,默认开启表头功能 - 设置
field_names为与列数一致的空字符串列表,避免显示额外表头内容 - 保留
hrules=HEADER,让空表头与内容之间生成分隔线 - 设置
vrules=NONE,移除列之间的垂直分隔,保持极简风格
内容的提问来源于stack exchange,提问作者Bill
相关产品推荐
相关产品推荐

