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

prettytable库详解:如何创建漂亮的表格

发布时间:2023-12-15 08:16:09

Prettytable是一个Python库,用于在终端中创建漂亮的表格。它提供了一种简单的方式来组织和展示数据,使输出更加清晰和易于阅读。

安装Prettytable

要使用Prettytable库,首先需要通过以下命令将其安装到Python环境中:

pip install prettytable

创建表格

要创建一个表格,需要先创建一个PrettyTable对象,然后使用add_column()或add_row()方法向表格中添加列或行。

首先,我们来创建一个简单的表格,其中包含两列和三行数据:

from prettytable import PrettyTable

# 创建一个表格对象

table = PrettyTable()

# 添加列

table.add_column("Name", ["Alice", "Bob", "Charlie"])

table.add_column("Age", [25, 30, 35])

# 打印表格

print(table)

这将打印以下表格:

+--------+-----+

|  Name  | Age |

+--------+-----+

| Alice  |  25 |

|  Bob   |  30 |

|Charlie |  35 |

+--------+-----+

如上所示,每个单元格的内容位于一个边界字符(默认为“|”)之间,并且每个边界字符之间的单元格宽度相等。

自定义表格

表格的外观可以通过设置属性来进行自定义。以下是几个常用的属性:

字段名称的对齐方式:

table.align["Name"] = "l"  # left align

table.align["Age"] = "r"   # right align

字段的宽度:

table.width["Name"] = 10

table.width["Age"] = 5

边界字符和头部分隔线的样式:

table.horizontal_char = "-"

table.vertical_char = "|"

table.header_separator_char = "="

打印样式:

table.junction_char = "+"

table.format = True  # 格式化输出

print(table)

使用上述属性可以创建一个自定义的表格。例如:

+----------+-----+

|   Name   | Age |

+----------+-----+

| Alice    |  25 |

| Bob      |  30 |

| Charlie  |  35 |

+----------+-----+

表格数据的排序

Prettytable还提供了一种简单的方式来按列对表格的数据进行排序。可以使用sortby属性指定要排序的列,并使用reversesort属性指定是否以逆序排序。

以下是一个例子:

table.sortby = "Age"

table.reversesort = True

print(table)

这将按照年龄进行逆序排序并打印表格。

+----------+-----+

|   Name   | Age |

+----------+-----+

| Charlie  |  35 |

|   Bob    |  30 |

| Alice    |  25 |

+----------+-----+

总结

Prettytable是一个简单实用的Python库,用于创建漂亮的表格。它为在终端中展示数据提供了灵活和易于使用的接口。可以通过设置属性来自定义表格的外观,并且还可以按列对表格数据进行排序。使用Prettytable,可以以一种清晰和易于阅读的方式呈现数据。