当我们需要将一些数据以表格形式打印输出时,Python提供了多种方法实现,可以使用第三方库,如pandas、prettytable等,也可以使用Python内置模块,如字符串格式化。下面分别就两种方法进行详细讲解。
使用Python内置模块实现
Python内置的字符串格式化可以灵活地处理字符串和数据,根据数据类型、格式字符串中的占位符等内容,对输出数据进行设置。使用格式化字符串时,可以使用特殊字符来表示不同的数据类型,这些特殊字符就是格式化字符。
下面示例通过Python内置模块实现以表格形式打印输出数据:
name = ["Tom", "Mary", "John"]
age = [22, 23, 25]
gender = ["male", "female", "male"]
print("{:<10s} {:<5s} {:<10s}".format("Name", "Age", "Gender"))
print("-" * 30)
for i in range(len(name)):
print("{:<10s} {:<5d} {:<10s}".format(name[i], age[i], gender[i]))
代码解释:
- 第一行定义了3个列表变量,分别保存名字、年龄、性别。
- 第2、3行分别创建3个字符串变量,分别表示表头第1、2、3列的名称,使用格式化占位符{:<10s}和{:<5s}给表头定义了一些样式。
- 第4行打印了一条50个“-”号的水平分隔线。
- 第5行通过for循环遍历数据,分别输出每一行的内容,依次按姓名、年龄、性别顺序输出,并且使用格式化字符调整了输出样式。
执行以上代码,结果如下:
Name Age Gender
------------------------------
Tom 22 male
Mary 23 female
John 25 male
使用第三方库实现
除了使用内置模块进行格式化输出外,Python还有很多第三方库可以实现以表格形式打印输出数据。其中,Pandas库是一种流行的数据分析工具,它提供了一些灵活的函数和数据表格输出的方法,方便进行数据分析和可视化呈现。
下面示例是使用pandas库来实现表格形式的输出:
import pandas as pd
data = {"Name": ["Tom", "Mary", "John"],
"Age": [22, 23, 25],
"Gender": ["male", "female", "male"]}
df = pd.DataFrame(data)
print(df)
代码解释:
- 第1行导入了pandas库。
- 第3-5行定义了一个字典data,存储需要输出的数据。
- 第7行通过pd.DataFrame()创建一个pandas数据帧df。
- 第8行打印输出了df结果,其中pandas将每个列名和数据自动对齐格式输出。
执行以上代码,结果如下:
Name | Age | Gender | |
---|---|---|---|
0 | Tom | 22 | male |
1 | Mary | 23 | female |
2 | John | 25 | male |
在使用Pandas库时,也可以利用样式设置、表格单元格合并等进行更加高级的操作,Pandas库的强大功能可以帮助我们更加有效地进行数据处理和可视化展示。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python如何以表格形式打印输出的方法示例 - Python技术站