python之prettytable模块格式化打印
python之prettytable模块
python的prettytable模块可以让我们更加清晰的将数据记录格式化打印出来,今天简单看下这个模块的使用方法。
注意:使用前需要引入包
from prettytable import PrettyTable
from prettytable import from_csv
如果对应的python包不存在,则需要通过:
pip install prettytable
来进行安装。
方法一、直接添加列名字和数据记录
from prettytable import PrettyTable
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
# 直接输入行和列进行排列
table = PrettyTable()
table.field_names = ["姓名", "年龄", "性别", "身高"]
table.add_row(["yeyz", 26, '男', 182])
table.add_row(["任盈盈", 27, '女', 172])
table.add_row(["杨过", 28, '男', 175])
# 添加一个列
table.add_column("成绩", [60, 70, 80])
print table
输出结果如下:
+--------+------+------+------+----+
| 姓名 | 年龄 | 性别 | 身高 | 成绩 |
+--------+------+------+------+----+
| yeyz | 26 | 男 | 182 | 60 |
| 任盈盈 | 27 | 女 | 172 | 70 |
| 杨过 | 28 | 男 | 175 | 80 |
+--------+------+------+------+----+
Process finished with exit code 0
可以看到:
通过field_names可以将列名称给列出来
通过add_row函数可以将记录添加到表格里面
通过add_column可以给这个表添加数据记录
方法二、通过加载csv文件来格式化输出数据
from prettytable import PrettyTable
from prettytable import from_csv
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
# 通过一个文件进行添加
'''
+--------+------+------+------+------+
| 姓名 | 年龄 | 性别 | 身高 | 分数 |
+--------+------+------+------+------+
| 刘德华 | 56 | 男 | 165 | 30 |
| 张学友 | 50 | 男 | 65 | 80 |
| 周杰伦 | 38 | 男 | 170 | 90 |
| 黎明 | 40 | 男 | 180 | 100 |
+--------+------+------+------+------+
'''
table1 = PrettyTable()
csv_file = open('csv_file.csv', 'r')
print csv_file
table1 = from_csv(csv_file)
print table1
输出结果如下:
+--------+------+------+------+------+
| 姓名 | 年龄 | 性别 | 身高 | 分数 |
+--------+------+------+------+------+
| 刘德华 | 56 | 男 | 165 | 30 |
| 张学友 | 50 | 男 | 65 | 80 |
| 周杰伦 | 38 | 男 | 170 | 90 |
| 黎明 | 40 | 男 | 180 | 100 |
+--------+------+------+------+------+