Bil*_*ill 5 python format console dataframe output
我正在研究 Python 包,它们提供了一种简单的方法来将格式化的“漂亮”表格作为文本输出。这个答案提供了一些建议。问题是,我想像记录器一样按顺序打印我的表(一次一行)。
为了说明这一点, tabulate的输出非常适合我的应用程序:
from tabulate import tabulate
some_data = [['08:01', 1.00, 32], ['08:02', 1.01, 33], ['08:03', 1.02, 33]]
headers = ['Time', 'x', 'n']
print(tabulate(some_data, headers=headers, tablefmt='plain'))
Run Code Online (Sandbox Code Playgroud)
输出:
Time x n
08:01 1 32
08:02 1.01 33
08:03 1.02 33
Run Code Online (Sandbox Code Playgroud)
但我想一次执行一个操作,而不是一次性执行所有操作: 1. 打印标题 2. 打印第一行数据 3. 打印下一行 4. ...等等。
当然,我尝试过这个:
print(tabulate(some_data[0:1], tablefmt='plain'))
Run Code Online (Sandbox Code Playgroud)
输出:
08:01 1 32
Run Code Online (Sandbox Code Playgroud)
这显然不会完美地工作,因为每行的格式每次都会不同。所以我需要一个包,您可以先在其中设置表格(指定所需的格式、列宽等)。然后一次一行输出数据。
有谁知道这是否可以在这些包之一或我可以导入的另一个包中实现?
只需使用内置的 python 命令即可获得非常好的简单表格format。您可以指定格式字符串,然后将其用作“模板”并传入要应用于该模板的数据。
format_string = "{:<10}{:<8}{:<10}"
print(format_string.format(*headers))
for entry in some_data:
print(format_string.format(*entry))
Run Code Online (Sandbox Code Playgroud)
有关填充等各种选项的完整列表,请参阅https://pyformat.info
| 归档时间: |
|
| 查看次数: |
7529 次 |
| 最近记录: |