📅  最后修改于: 2023-12-03 15:19:29.697000             🧑  作者: Mango
在Python中,我们经常需要输出一些数据,比如列表、字典、元组等等。为了美观和清晰地呈现这些数据,我们需要使用表格形式进行排版。Python中有许多打印表格的库,本文将为大家介绍其中三个常用的库:prettytable
、tabulate
和pandas
。
prettytable
库是Python中一个简单易用的表格打印库,它能够生成一个美观且易于阅读的表格。它的使用非常简单,安装后只需导入即可:
pip install prettytable
然后,我们可以使用以下代码来生成一个表格:
from prettytable import PrettyTable
table = PrettyTable()
table.field_names = ["Name", "Age", "Sex"]
table.add_row(["John", 23, "Male"])
table.add_row(["Mary", 18, "Female"])
table.add_row(["Sam", 52, "Male"])
print(table)
输出:
+------+-----+--------+
| Name | Age | Sex |
+------+-----+--------+
| John | 23 | Male |
| Mary | 18 | Female |
| Sam | 52 | Male |
+------+-----+--------+
PrettyTable
对象具有许多属性和方法,可以轻松地自定义表格的样式和内容。比如,我们可以使用set_style()
方法来改变表格的风格:
table.set_style(PrettyTable.STYLE_GRID)
此外,还可以使用set_field_align()
方法来设置每一列的对齐方式:
table.set_field_align('Name', 'l') # 左对齐
table.set_field_align('Age', 'c') # 居中对齐
table.set_field_align('Sex', 'r') # 右对齐
tabulate
库是Python中另一个流行的打印表格的库,它支持各种格式的表格输出,比如纯文本、Markdown、HTML等。使用tabulate
库也非常简单,安装后只需导入即可:
pip install tabulate
使用tabulate
库打印表格的代码与prettytable
库类似:
from tabulate import tabulate
data = [["John", 23, "Male"], ["Mary", 18, "Female"], ["Sam", 52, "Male"]]
headers = ["Name", "Age", "Sex"]
print(tabulate(data, headers=headers, tablefmt="grid"))
输出:
+-------+-----+--------+
| Name | Age | Sex |
+=======+=====+========+
| John | 23 | Male |
+-------+-----+--------+
| Mary | 18 | Female |
+-------+-----+--------+
| Sam | 52 | Male |
+-------+-----+--------+
其中tablefmt
参数可以设置输出的格式,比如grid
、pipe
、html
等等。
除了以上介绍的两个库,Python中还有一个非常强大的数据处理库pandas
,它也能够轻松地处理和打印表格。这里不再赘述,读者可以自行去学习。
综合来说,prettytable
和tabulate
是Python中常用的打印表格的库,它们都有易于上手的接口和各种自定义选项,读者可以根据需求选择其中一款来使用。