【问题标题】:Python PrettyTable: Add title above the table's headerPython PrettyTable:在表格标题上方添加标题
【发布时间】: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

【问题讨论】:

    标签: python prettytable


    【解决方案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) 后,它确实可以工作。接受你的回答。
    猜你喜欢
    • 2018-05-06
    • 2018-12-26
    • 1970-01-01
    • 2018-08-31
    • 2021-11-21
    • 2017-04-16
    • 2017-02-15
    • 2020-09-01
    • 1970-01-01
    相关资源
    最近更新 更多