python 美化输出,python美化输出模块
本文主要介绍python的两个可以美化表格数据输出结果的工具。文章围绕主题,有一定的参考价值,有需要的朋友可以参考一下。
00-1010前言1。美化表输出2。用prettytable美化输出汇总
目录
在python对表格数据的处理中,这项工作的重点是对表格数据进行整理、计算和显示。本文着重研究这方面的内容。
首先我们看一个案例,定义一个数组形式的表格数据:
[de chin @ de chin-manjaro table]$ ipython
Python 3.8.5(默认,2020年9月4日,07:30:14)
有关详细信息,请键入“版权”、“信用”或“许可证”
IPython 7 . 19 . 0——一个增强的交互式Python。键入“?”寻求帮助。
In [1]: table=[(a ,1,2,3),( b ,2,3,4)]
[2]:打印中(表格)
[(a ,1,2,3),( b ,2,3,4)]
当我们直接打印这个表单数据时,发现效果非常难看。虽然我们可以从这个表中得到同样的信息,但是这种数据显示的方法对于我们直接从打印输出中得到数据是非常不利的。
前言
首先介绍一个工具制表,可以直接打印数组格式的表格数据,有多种输出格式可供选择。安装方法也可以由pip管理:
[de chin @ de chin-man jaro table]$ python 3-m pip安装制表
要求已经满足:/home/de chin/anaconda 3/lib/python 3.8/site-packages(0 . 8 . 9)中的表格
安装很容易,没有其他依赖。
接下来我们用ipython来展示一些基本用法:
[de chin @ de chin-manjaro table]$ ipython
Python 3.8.5(默认,2020年9月4日,07:30:14)
有关详细信息,请键入“版权”、“信用”或“许可证”
IPython 7 . 19 . 0——一个增强的交互式Python。键入“?”寻求帮助。
在[1]:中从制表导入制表
在[2]:中,将numpy作为np导入
in[3]: header=[ index ]list(range(4))#头的定义
在[4]:标题中
Out[4]: [index ,0,1,2,3]
In [8] : table=[(Alice ,1,2,3,4),( Bob ,2,3,4,5)] #表格内容的定义
[9]:表中
Out[9]: [(爱丽丝,1,2,3,4),(鲍勃,2,3,4,5)]
In [11] :print(制表(table,headers=header,table fmt= grid )#以网格格式打印表格内容。
- - - - -
索引 0 1 2 3
=============================
爱丽丝 1 2 3 4
- - - - -
鲍勃 2 3 4 5
- - - - -
In [12] :print(制表(table,headers=header,table fmt= fantasy _ grid )#以fantasy _ grid格式打印。
指数 0
│ 1 │ 2 │ 3 │
╞═════════╪═════╪═════╪═════╪═════╡
│ Alice │ 1 │ 2 │ 3 │ 4 │
├─────────┼─────┼─────┼─────┼─────┤
│ Bob │ 2 │ 3 │ 4 │ 5 │
╘═════════╧═════╧═════╧═════╧═════╛
在这个案例中,我们分别产生了数组格式的表头和表格内容,然后用tabulate进行封装之后再打印出来。由于tabulate支持多种格式的输出,这里我们展示的仅有grid和fancy_grid两种个人比较喜欢的格式
其他类型的格式还有:
"plain""simple"
"github"
"grid"
"fancy_grid"
"pipe"
"orgtbl"
"jira"
"presto"
"psql"
"rst"
"mediawiki"
"moinmoin"
"youtrack"
"html"
"latex"
"latex_raw"
"latex_booktabs"
"textile"
2.使用prettytable美化输出
类似于tabulate的,prettytable的主要目的也是规范化的美化表格数据的输出,但是在使用方法上略有差异,在不同的场景下可以使用不同的方案。
这里我们先看一下prettytable的安装,同样可以使用pip来进行管理:
[dechin@dechin-manjaro table]$ python3 -m pip install prettytableCollecting prettytable
Downloading prettytable-2.1.0-py3-none-any.whl (22 kB)
Requirement already satisfied: wcwidth in /home/dechin/anaconda3/lib/python3.8/site-packages (from prettytable) (0.2.5)
Installing collected packages: prettytable
Successfully installed prettytable-2.1.0
安装完成后我们用一个py文件的示例来展示其用法:
from prettytable import PrettyTabletb = PrettyTable() # 生成表格对象
tb.field_names = [Index, 0, 1, 2, 3] # 定义表头
tb.add_row([Alice,1,2,3,4]) # 添加一行,列是column
tb.add_row([Bob,2,3,4,5])
print (tb) # 打印输出
代码的执行结果如下:
[dechin@dechin-manjaro table]$ python3 pt_test.py+-------+---+---+---+---+
Index 0 1 2 3
+-------+---+---+---+---+
Alice 1 2 3 4
Bob 2 3 4 5
+-------+---+---+---+---+
由于使用的案例跟上面介绍的tabulate是一样的,所以输出结果也类似,相当于多了一种输出格式。但是除了输出格式之外,我们发现prettytable可以很好的利用行和列的添加的形式来进行表格操作,操作习惯更接近于数据库的操作形式,因此对于经常使用数据库的人而言,prettytable可能是一种更好的表格数据输出解决方案。
总结
本文介绍了两种表格数据的打印工具:tabulate和prettytable的安装与基本使用方法。由于表格数据本身是没有对输出格式进行规范化的,因此打印出来的数据会显得比较杂乱,不利于直观的阅读。因此引入这两种工具,加强了输出结果的可读性。这两者在使用上各有优劣,tabulate支持更多形式的表格样式,而prettytable则使用了更加接近于数据库的操作形式,对于部分用户而言有天然的生态优势。
到此这篇关于python可以美化表格数据输出结果的两个工具的文章就介绍到这了,更多相关python美化表格输出内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。