📅  最后修改于: 2023-12-03 14:56:10.555000             🧑  作者: Mango
如果你想在 Python 中漂亮地打印列表,使用 prettytable
库是一个不错的选择。这个库可以帮助你创建具有自动对齐和格式化功能的表格。我们来看看怎么使用它。
你可以通过 pip 来安装 prettytable
库:
pip install prettytable
让我们从一个简单的例子开始,假设你有一些数据需要展示:
from prettytable import PrettyTable
table = PrettyTable()
table.field_names = ["Name", "Age", "Height"]
table.add_row(["Alice", 25, 1.75])
table.add_row(["Bob", 30, 1.80])
table.add_row(["Charlie", 35, 1.90])
print(table)
上面的代码将输出以下表格:
+----------+-----+--------+
| Name | Age | Height |
+----------+-----+--------+
| Alice | 25 | 1.75 |
| Bob | 30 | 1.8 |
| Charlie | 35 | 1.9 |
+----------+-----+--------+
你可以通过 field_names
属性来设置表格的列名。然后,通过 add_row
方法向表格添加行。
PrettyTable
有很多格式化选项,下面我们来看一些常用的。
默认情况下,表格中的所有列都居左对齐。你可以通过 align
参数来设置所有列的对齐方式。比如,这里我们将所有列都设置为居中对齐:
table = PrettyTable()
table.field_names = ["Name", "Age", "Height"]
table.add_row(["Alice", 25, 1.75])
table.add_row(["Bob", 30, 1.80])
table.add_row(["Charlie", 35, 1.90])
table.align = "c"
print(table)
输出结果:
+----------+-----+--------+
| Name | Age | Height |
+----------+-----+--------+
| Alice | 25 | 1.75 |
| Bob | 30 | 1.8 |
| Charlie | 35 | 1.9 |
+----------+-----+--------+
默认情况下,PrettyTable
会在表格周围添加边框。你可以通过 border
参数来控制边框的宽度。比如,让我们将边框的宽度设置为 2:
table = PrettyTable()
table.field_names = ["Name", "Age", "Height"]
table.add_row(["Alice", 25, 1.75])
table.add_row(["Bob", 30, 1.80])
table.add_row(["Charlie", 35, 1.90])
table.border = 2
print(table)
输出结果:
╔══════════╦═════╦════════╗
║ Name ║ Age ║ Height ║
╠══════════╬═════╬════════╣
║ Alice ║ 25 ║ 1.75 ║
║ Bob ║ 30 ║ 1.8 ║
║ Charlie ║ 35 ║ 1.9 ║
╚══════════╩═════╩════════╝
PrettyTable
支持对表格中的数据进行格式化。比如,你可以设置所有数字类型的值都显示为 2 位小数:
table = PrettyTable()
table.field_names = ["Name", "Age", "Height"]
table.add_row(["Alice", 25, 1.756])
table.add_row(["Bob", 30, 1.802])
table.add_row(["Charlie", 35, 1.902])
table.float_format = ".2"
print(table)
输出结果:
+----------+-----+--------+
| Name | Age | Height |
+----------+-----+--------+
| Alice | 25.0| 1.76 |
| Bob | 30.0| 1.80 |
| Charlie | 35.0| 1.90 |
+----------+-----+--------+
在 Python 中打印漂亮的表格并不困难。prettytable
库提供了强大的自动对齐和格式化功能,可以帮助你创建出非常漂亮的表格。大家可以试试自己用 prettytable
库打印出更漂亮的表格!