如何在Python中输出漂亮的表格
在使用Python中,如果能够快速将我们的数据组成更具可读性的格式,例如在数据整理时,对于分析数据非常有帮助。Python提供了将某些表格数据类型轻松转换为格式良好的纯文本表格的能力,在本文中,我们将讨论如何在Python中输出漂亮的表格,Python中有提供大量的库可用于实现不同目的。
在本文中,我们将介绍用于创建表的模块Tabulate、PrettyTable。
方法一:使用Tabulate
Tabulate 是一个开源python 包/模块,用于打印表格数据。它易于使用并包含多种格式化功能。它具有以下功能:
- 一个函数调用所有类型的格式
- 可以以多种输出格式下载
- 提供更好的文本和数据演示。
在本文中,我们将了解可以使用 Tabulate 执行哪些不同类型的表格格式化。可以使用以下命令安装
pip install tabulate
下面是一些描述如何在 python 中创建表的示例:
Python 3 代码
# import module
from tabulate import tabulate
# assign data
mydata = [{"Nikhil", "Delhi"},
{"Ravi", "Kanpur"},
{"Manish", "Ahmedabad"},
{"Prince", "Bangalore"}]
# create header
head = ["Name", "City"]
# display table
print(tabulate(mydata, headers=head, tablefmt="grid"))
输出:
Python 3 代码
# import module
from tabulate import tabulate
# assign data
mydata = [{'a', 'b', 'c'},
{12, 34, 56},
{'Geeks', 'for', 'geeks!'}]
# display table
print(tabulate(mydata))
输出:
方法二:使用PrettyTable
Prettytable 是一个用于生成简单 ASCII 表的 Python 库。我们可以控制表格的许多方面,例如列填充的宽度、文本的对齐方式或表格边框。我们可以对数据进行排序。
我们还可以选择要在最终输出中显示哪些列和行。PrettyTable 可以从 CSV、HTML 或数据库光标读取数据并以 ASCII 或 HTML 格式输出数据。
pip install prettytable
Python 3 代码
from prettytable import PrettyTable
# Specify the Column Names while initializing the Table
myTable = PrettyTable(["Student Name", "Class", "Section", "Percentage"])
# Add rows
myTable.add_row(["Leanord", "X", "B", "91.2 %"])
myTable.add_row(["Penny", "X", "C", "63.5 %"])
myTable.add_row(["Howard", "X", "A", "90.23 %"])
myTable.add_row(["Bernadette", "X", "D", "92.7 %"])
myTable.add_row(["Sheldon", "X", "A", "98.2 %"])
myTable.add_row(["Raj", "X", "B", "88.1 %"])
myTable.add_row(["Amy", "X", "B", "95.0 %"])
print(myTable)
输出: