欢迎访问宙启技术站
智能推送

Python中prettytable库的简单入门教程

发布时间:2024-01-18 11:46:18

prettytable是一个Python库,用于创建漂亮的表格。它可以帮助我们以可读性强的方式展示数据,并支持自定义表格样式、排序和格式化等功能。

安装

在使用prettytable库之前,我们需要通过pip安装它。在终端或命令提示符中运行以下命令:

pip install prettytable

安装完成后,我们就可以在Python中使用prettytable库了。

创建一个简单的表格

让我们首先创建一个简单的表格,并向其中添加一些数据。下面是一个示例代码:

from prettytable import PrettyTable

# 创建表格对象
table = PrettyTable()

# 添加表头
table.field_names = ["名字", "年龄", "国家"]

# 添加数据行
table.add_row(["张三", 28, "中国"])
table.add_row(["John", 35, "美国"])
table.add_row(["Hans", 42, "德国"])

# 打印表格
print(table)

输出结果如下:

+---------+------+--------+
|   名字  |  年龄  |  国家  |
+---------+------+--------+
|   张三  |  28  |  中国  |
|  John  |  35  |  美国   |
|  Hans  |  42  |  德国   |
+---------+------+--------+

在这个例子中,我们首先导入了PrettyTable类。然后,创建一个PrettyTable对象,并使用field_names属性定义表格的列名。接下来,使用add_row()方法向表格中添加数据行。最后,使用print()函数打印出表格。

自定义表格样式

prettytable库提供了许多方法来自定义表格的样式。我们可以使用set_style()方法来设置表格的整体样式。下面是一个示例:

from prettytable import PrettyTable

table = PrettyTable(["名字", "年龄", "国家"])

table.add_row(["张三", 28, "中国"])
table.add_row(["John", 35, "美国"])
table.add_row(["Hans", 42, "德国"])

# 设置样式
table.set_style("grid")

print(table)

输出结果如下:

+-------+------+------+--------+
|  名字  | 年龄 | 国家 |        |
+-------+------+------+--------+
|  张三  |  28  | 中国 |        |
+-------+------+------+--------+
|  John |  35  | 美国 |        |
+-------+------+------+--------+
|  Hans |  42  | 德国 |        |
+-------+------+------+--------+

在这个例子中,我们在创建表格对象时使用了set_style()方法来设置整个表格的样式为"grid"。我们还可以使用其他样式如"unicode"、"ascii"等。

排序表格数据

prettytable库还提供了排序表格的功能。我们可以使用sortby属性来指定按照哪一列排序。下面是一个示例:

from prettytable import PrettyTable

table = PrettyTable(["名字", "年龄", "国家"])

table.add_row(["张三", 28, "中国"])
table.add_row(["John", 35, "美国"])
table.add_row(["Hans", 42, "德国"])

# 按照年龄排序
table.sortby = "年龄"

print(table)

输出结果如下:

+-------+------+------+--------+
|  名字  | 年龄 | 国家 |        |
+-------+------+------+--------+
|  张三  |  28  | 中国 |        |
+-------+------+------+--------+
|  John |  35  | 美国 |        |
+-------+------+------+--------+
|  Hans |  42  | 德国 |        |
+-------+------+------+--------+

在这个例子中,我们在创建表格对象后,使用sortby属性指定按照"年龄"列进行排序。注意,排序的列必须是已经存在于表格中的列。

格式化表格数据

prettytable库也支持对表格数据进行格式化。我们可以使用align属性来指定列的对齐方式,使用float_format属性来指定浮点数的格式,等等。下面是一个示例:

from prettytable import PrettyTable

table = PrettyTable(["名字", "年龄", "国家"])

table.add_row(["张三", 28, "中国"])
table.add_row(["John", 35, "美国"])
table.add_row(["Hans", 42, "德国"])

# 设置对齐方式
table.align = "l"

# 设置浮点数格式
table.float_format = ".2"

print(table)

输出结果如下:

+-------+------+------+
| 名字  | 年龄 | 国家  |
+-------+------+------+
| 张三  | 28.0 | 中国 |
| John | 35.0 | 美国 |
| Hans | 42.0 | 德国 |
+-------+------+------+

在这个例子中,我们使用align属性将所有列的对齐方式设置为左对齐。我们还使用float_format属性将浮点数格式化为两位小数。

总结

通过这个简单的入门教程,我们了解了如何使用prettytable库来创建漂亮的表格、自定义表格样式、排序和格式化表格数据等功能。prettytable是一个功能强大且易于使用的库,可以帮助我们以更直观的方式展示数据。