Python中prettytable库的简单入门教程
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是一个功能强大且易于使用的库,可以帮助我们以更直观的方式展示数据。
