1. 引言
Python
中的Tabulate
是一个流行的表格处理软件包,可让大家方便地从各种数据源中创建格式化的表格。它简化了以表格格式来展示数据的过程,尤其适用于在命令行界面、Jupyter Notebook
环境中以清晰有序的方式展示数据。
闲话少说,我们直接开始吧!
2. 自己实现表格打印
其实实现表格的格式化输出有多种实现方式,我们首先来自己动手实现一种最原始的格式化输出方法,代码如下:
data = [
["Alice", 28, "Engineer"],
["Bob", 24, "Designer"],
["Charlie", 32, "Writer"]
]
headers = ["Name", "Age", "Occupation"]
premier_league = [headers] + data
print(premier_league)
col_widths = [max(len(str(item)) for item in col) for col in zip(*premier_league)]
for row in premier_league:
row_str = ""
for i, item in enumerate(row):
row_str += str(item).ljust(col_widths[i] + 2)
print(row_str)
运行后,结果如下:
Name Age Occupation
Alice 28 Engineer
Bob 24 Designer
Charlie 32 Writer
上述代码中,我们使用 List Comprehension
来计算每列的最大宽度。我们使用 zip(*premier_league)
函数访问 premier_league
列表中的每一列,然后找出该列中每个项目的全部长度,最后通过函数ljust
来控制每列输出的宽度。
3. 安装
上述代码虽然可以实现表格的格式化输出,但是需要自己写多行代码来自行控制,那么有没有更加简洁的方法呢?此时,推荐大家使用专门用于表格的Tabulate
库。
要在 Python
中安装 Tabulate
库,可以使用 pip
软件包管理器。打开终端或命令行窗口,输入以下命令:
pip install tabulate
安装过程如下:
4. 基本用法
大家可以使用Tabulate
表格库,在命令行界面中以用户友好的格式来显示数据。利用输入数据列表,我们可以使用tabulate()
函数来轻松创建一个表格:
from tabulate import tabulate
data = [
["Alice", 28, "Engineer"],
["Bob", 24, "Designer"],
["Charlie", 32, "Writer"]
]
headers = ["Name", "Age", "Occupation"]
table = tabulate(data, headers=headers, tablefmt="grid")
print(table)
运行结果如下:
5. 控制对齐方式
此外大家还可以指定表格中元素的对齐方式、列隐藏等各种选项,来自定义表格输出样式。
from tabulate import tabulate
data = [
["Alice", 28, "Engineer"],
["Bob", 24, "Designer"],
["Charlie", 32, "Writer"]
]
headers = ["Name", "Age", "Occupation"]
table = tabulate(data, headers=headers, tablefmt="grid", numalign="center")
print(table)
上述代码,通过参数numalign
控制数据元素居中显示,运行代码后结果如下:
6. 控制表格样式
大家还可以选择不同的表格样式,用以匹配不同的可视化需求。主要通过参数tablefmt
实现,代码如下:
from tabulate import tabulate
data = [
["Alice", 28, "Engineer"],
["Bob", 24, "Designer"],
["Charlie", 32, "Writer"]
]
headers = ["Name", "Age", "Occupation"]
table = tabulate(data, headers=headers, tablefmt="fancy_outline", numalign="center")
print(table)
运行后,得到结果如下:
此外,参数tablefmt
的取值还有 plain
,simple
,pipe
,等,大家可以根据自己的喜好来进行选择。
7. 总结
本文探索了如何使用 Python
中的Tabulate
来创建整洁而专业的表格数据展示,表格在数据分析、报告和文档等各种情况下都很有用。借助该库,大家可以创建更具可读性的报告,并更好地展示数据分析的结果。
您学废了嘛?