📜  python中的打印表(1)

📅  最后修改于: 2023-12-03 15:19:29.697000             🧑  作者: Mango

Python中的打印表

在Python中,我们经常需要输出一些数据,比如列表、字典、元组等等。为了美观和清晰地呈现这些数据,我们需要使用表格形式进行排版。Python中有许多打印表格的库,本文将为大家介绍其中三个常用的库:prettytabletabulatepandas

1. prettytable库

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')  # 右对齐
2. tabulate库

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参数可以设置输出的格式,比如gridpipehtml等等。

除了以上介绍的两个库,Python中还有一个非常强大的数据处理库pandas,它也能够轻松地处理和打印表格。这里不再赘述,读者可以自行去学习。

综合来说,prettytabletabulate是Python中常用的打印表格的库,它们都有易于上手的接口和各种自定义选项,读者可以根据需求选择其中一款来使用。