Python PrettyTable:在表格标题上方添加标题
Posted
技术标签:
【中文标题】Python PrettyTable:在表格标题上方添加标题【英文标题】:Python PrettyTable: Add title above the table's header 【发布时间】:2016-05-21 04:33:10 【问题描述】:我有一个脚本可以生成多个表,这些表都有相同的列名和非常相似的数据。到目前为止,我一直在通过在每个表格之前打印一个标题来使其独一无二,即:
print("Results for Method Foo")
#table 1
print("Results for Method Bar")
#table 2
等等。但这不是很漂亮..
虽然这似乎是一个明显的用例,但我在任何地方都找不到执行此类操作的选项:
关于如何实现这一目标的任何想法?
以防万一:我正在使用 python 3.4,带有 virtualenv 和 prettytable 版本 0.7.2
【问题讨论】:
【参考方案1】:这可以使用 PTable 库来实现,该库最初是从 PrettyTable 派生的。我在文档中没有找到这个,所以它可能对其他人有用,语法如下:
from prettytable import PrettyTable
table = PrettyTable()
table.title = 'Results for method Foo'
table.field_names = ['Experiment', 'Value']
table.add_row(['bla', 3.14])
table.add_row(['baz', 42.0])
print(table)
这给出了所需的输出:
+-------------------------+
| Results for method Foo |
+---------------+---------+
| Experiment | Value |
+---------------+---------+
| bla | 3.14 |
| baz | 42.0 |
+---------------+---------+
【讨论】:
这对我不起作用。表标题未显示。使用 Python 3.4.3 和以下依赖项进行测试:表 (3.4.2)、漂亮表 (0.7.2)。 它只适用于 PTable(见上面的链接,我使用的是 0.9.2 版)。这是一个不同的包,但与 prettytable 共享基本语法,因为它最初是从它派生出来的。 在添加 PTable 依赖项 (pip install ptable) 后,它确实可以工作。接受你的回答。以上是关于Python PrettyTable:在表格标题上方添加标题的主要内容,如果未能解决你的问题,请参考以下文章