iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python3美化表格数据输出结果的实现代码
  • 217
分享到

python3美化表格数据输出结果的实现代码

2024-04-02 19:04:59 217人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

技术背景 在前面一篇博客中我们介绍过关于python的表格数据处理方案,这其中的工作重点就是对表格类型的数据进行梳理、计算和展示,本文重点介绍展示这个方面的工作。首先我们看一个案例,

技术背景

在前面一篇博客中我们介绍过关于python的表格数据处理方案,这其中的工作重点就是对表格类型的数据进行梳理、计算和展示,本文重点介绍展示这个方面的工作。首先我们看一个案例,定义一个数组形式的表格数据:


[dechin@dechin-manjaro table]$ iPython
Python 3.8.5 (default, Sep  4 2020, 07:30:14) 
Type 'copyright', 'credits' or 'license' for more infORMation
IPython 7.19.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: table=[('a',1,2,3),('b',2,3,4)]

In [2]: print(table)
[('a', 1, 2, 3), ('b', 2, 3, 4)]

当我们直接打印这个表格数据的时候,发现效果非常的难看。虽然我们可以从这个表格中获取到同样的信息,但是这种数据展示的方法对于我们直接从打印输出中获取数据是非常不利的。

使用tabulate美化表格输出

首先介绍一个工具tabulate,可以直接打印数组格式的表格数据,并且有多种输出格式可选。安装方法同样可以用pip来进行管理:


[dechin@dechin-manjaro table]$ python3 -m pip install tabulate
Requirement already satisfied: tabulate in /home/dechin/anaconda3/lib/python3.8/site-packages (0.8.9)

安装很容易,也没有其他依赖。接下来我们用ipython来展示一些基本用法:


[dechin@dechin-manjaro table]$ ipython
Python 3.8.5 (default, Sep  4 2020, 07:30:14) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.19.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from tabulate import tabulate

In [2]: import numpy as np

In [3]: header=['index']+list(range(4)) # 表头的定义

In [4]: header
Out[4]: ['index', 0, 1, 2, 3]

In [8]: table=[('Alice',1,2,3,4),('Bob',2,3,4,5)] # 表格内容的定义

In [9]: table
Out[9]: [('Alice', 1, 2, 3, 4), ('Bob', 2, 3, 4, 5)]

In [11]: print(tabulate(table,headers=header,tablefmt='grid')) # 用grid的格式打印表格内容
+---------+-----+-----+-----+-----+
| index   |   0 |   1 |   2 |   3 |
+=========+=====+=====+=====+=====+
| Alice   |   1 |   2 |   3 |   4 |
+---------+-----+-----+-----+-----+
| Bob     |   2 |   3 |   4 |   5 |
+---------+-----+-----+-----+-----+

In [12]: print(tabulate(table,headers=header,tablefmt='fancy_grid')) # 用fancy_grid的格式打印
╒═════════╤═════╤═════╤═════╤═════╕
│ index   │   0 │   1 │   2 │   3 │
╞═════════╪═════╪═════╪═════╪═════╡
│ Alice   │   1 │   2 │   3 │   4 │
├─────────┼─────┼─────┼─────┼─────┤
│ Bob     │   2 │   3 │   4 │   5 │
╘═════════╧═════╧═════╧═════╧═════╛

在这个案例中,我们分别产生了数组格式的表头和表格内容,然后用tabulate进行封装之后再打印出来。由于tabulate支持多种格式的输出,这里我们展示的仅有gridfancy_grid两种个人比较喜欢的格式。其他类型的格式还有:


"plain"
"simple"
"GitHub"
"grid"
"fancy_grid"
"pipe"
"orgtbl"
"jira"
"presto"
"psql"
"rst"
"mediawiki"
"moinmoin"
"youtrack"
"html"
"latex"
"latex_raw"
"latex_booktabs"
"textile"

使用prettytable美化输出

类似于tabulate的,prettytable的主要目的也是规范化的美化表格数据的输出,但是在使用方法上略有差异,在不同的场景下可以使用不同的方案。这里我们先看一下prettytable的安装,同样可以使用pip来进行管理:


[dechin@dechin-manjaro table]$ python3 -m pip install prettytable
Collecting 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文件的示例来展示其用法:


# pt_test.py

from prettytable import PrettyTable

tb = 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则使用了更加接近于数据库的操作形式,对于部分用户而言有天然的生态优势。

版权声明

本文首发链接为:https://www.cnblogs.com/dechinphy/p/table.html
作者ID:DechinPhy
更多原著文章请参考:Https://www.cnblogs.com/dechinphy/

参考链接https://blog.csdn.net/qq_43901693/article/details/104920856https://blog.csdn.net/u010359398/article/details/82766474

到此这篇关于python3美化表格数据输出结果的文章就介绍到这了,更多相关python表格美化输出内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python3美化表格数据输出结果的实现代码

本文链接: https://www.lsjlt.com/news/123574.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python3美化表格数据输出结果的实现代码
    技术背景 在前面一篇博客中我们介绍过关于python的表格数据处理方案,这其中的工作重点就是对表格类型的数据进行梳理、计算和展示,本文重点介绍展示这个方面的工作。首先我们看一个案例,...
    99+
    2024-04-02
  • python可以美化表格数据输出结果的两个工具
    目录前言1.使用tabulate美化表格输出2.使用prettytable美化输出总结前言 在用python处理表格数据中,这其中的工作重点就是对表格类型的数据进行梳理、计算和展示,...
    99+
    2024-04-02
  • python可以美化表格数据输出结果的工具是什么
    本文小编为大家详细介绍“python可以美化表格数据输出结果的工具是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“python可以美化表格数据输出结果的工具是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-02
  • PHP+MySQL怎么查询数据并将结果作为表格输出
    PHP是一种流行的服务器端脚本语言,可以用来创建动态网页。使用PHP时,可以使用MySQL数据库存储数据,并且使用SQL来查询数据。在本文中,我们将看到如何使用PHP从MySQL数据库中查询数据并将结果作为表格输出。准备工作在开始之前,我们...
    99+
    2023-05-14
  • SpringMVC处理数据输出的实例代码
    一、 使用ModelAndVIew处理模型数据 控制器处理方法的返回值如果为ModelAndView, 则其既包含视图信息,也包含模型数据信息。数据是放在请求域中的。 ...
    99+
    2024-04-02
  • C#实现表格数据转实体的示例代码
    目录场景需求开发环境开发工具实现代码实现效果场景 在实际开发过程中,特别是接口对接之类的,对于这种需求是屡见不鲜,现在很多在线平台也都提供了像json转实体、sql转实体等。但是很多...
    99+
    2024-04-02
  • Unity连接MySQL并读取表格数据的实现代码
    表格如下: 在Unity读取并调用时的代码: 而如果想要查看该数据库中的另一个表,不是直接使用Table[1],而是需要更改SELECT * from <?...
    99+
    2024-04-02
  • HTML表格标签与CSS样式结合:打造美观实用的数据表格
    一、认识HTML表格标签 HTML表格标签,即,用于构建表格数据,是网页设计中常用的布局元素。表格由行和列组成,通过单元格容纳数据。基本语法如下: <table> <tr> <td>单元格...
    99+
    2024-02-11
    HTML表格 CSS样式 数据表格 网页设计 前端开发
  • C#代码格式化百分比数据怎么实现
    本篇内容介绍了“C#代码格式化百分比数据怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!C#代码格式化百分比数据实例:decimal&...
    99+
    2023-06-17
  • 怎么用C语言代码实现复数的加减及输出结构体
    这篇“怎么用C语言代码实现复数的加减及输出结构体”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用C语言代码实现复数的加减...
    99+
    2023-06-29
  • python3 实现mysql数据库连接池的示例代码
    dbutils封装文件传送门 DBUtils是一套Python数据库连接池包,并允许对非线程安全的数据库接口进行线程安全包装。DBUtils来自Webware for Python。...
    99+
    2024-04-02
  • Java实现将导出带格式的Excel数据到Word表格
    在Word中制作报表时,我们经常需要将Excel中的数据复制粘贴到Word中,这样则可以直接在Word文档中查看数据而无需打开另一个Excel文件。但是如果表格比较长,内容就会存在一...
    99+
    2022-11-16
    Java导出Excel数据到Word Java导出Excel数据 Java 导出数据
  • pandas实现数据可视化的示例代码
    目录一、概述1.1 plot函数参数1.2 本文用到的数据源说明二、折线图--kind='line'三、柱状图--kind='bar'3.1 各组数据...
    99+
    2024-04-02
  • Qt实现数据导出到xls的示例代码
    目录一、前言二、功能特点三、体验地址四、效果图五、相关代码一、前言 导入导出数据到csv由于语法简单,适用场景有限,于是乎还是必须再造一个轮子导出数据到xls,在经历过数十年的项目实...
    99+
    2024-04-02
  • PHP数据结构:序列化与反序列化的艺术,实现数据持久化与传输
    非常抱歉,由于您没有提供文章标题,我无法为您生成一篇高质量的文章。请您提供文章标题,我将尽快为您生成一篇优质的文章。...
    99+
    2024-05-14
  • mybatis根据表逆向自动化生成代码的实现
    目录1.引入插件2.修改generatorConfig.xml文件3.运行插件,生成代码.personSunflowerP { background: rgba(51, 153, 0...
    99+
    2024-04-02
  • Vuex数据持久化实现的思路与代码
    什么是vuex vuex :是一个专为vue.js开发的状态管理器,采用集中式存储的所有组件状态 五个属性: state、getters、mutations、actions、mod...
    99+
    2024-04-02
  • 【算法基础】数据结构| 单链表+双链表 代码实现+图解+原理
    博主简介:努力学习的预备程序媛一枚~博主主页: @是瑶瑶子啦所属专栏: Java岛冒险记【从小白到大佬之路】 前言 因为瑶瑶子正在备战蓝桥杯和校内ACM选拔赛,最近在学习算法相关的知识。我是借...
    99+
    2023-09-18
    算法 数据结构 java c++ 链表
  • Mysql将查询结果集转换为JSON数据的实例代码
    Mysql将查询结果集转换为JSON数据 前言学生表学生成绩表查询单个学生各科成绩(转换为对象JSON串并用逗号拼接)将单个学生各科成绩转换为数组JSON串将数组串作为value并设...
    99+
    2024-04-02
  • C# 使用Word模板导出数据的实现代码
    使用NPOI控件导出数据到Word模板中方式: 效果如下: Word模板: 运行结果: 实现如下: Student.cs using System; using System...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作