Python|专业输出文本化表格的Python库,太漂亮了!








1. 前言最近在用 Python 写一个命令行的管理工具 , 这个工具主要就是用来管理各种资源的信息 , 比如阿里云的 ECS 等信息 , 基本的功能就是同步阿里云的资源的信息到数据库 , 然后可以使用命令行查询 。
因为信息是展现在命令行中的 , 众所周知 , 命令行展现复杂的文本看起来着实累人 , 于是就想着能像表格那样展示 , 那看起来就舒服多了 。
prettytable库就是这么一个工具 , prettytable 可以打印出美观的表格 , 并且对中文支持相当好(如果有试图自己实现打印表格 , 你就应该知道处理中文是多么的麻烦)
2. 安装prettytable 并非 python 的内置库 , 通过pip install prettytable即可安装 。
3. 示例我们先来看一个示例:以上示例运行结果如下:在以上的示例中 , 我们通过form导入了表格库 。 table实例化了一个表格库 , 并且添加了['编号''云编号''名称''IP地址'为表头 , 如果没有添加表头 , 那么会以默认的Field+编号显示 , 例如:
所以为更直观看出每一列的意义 , 还是要添加表头的 。
4. 添加数据prettytable提供了多种的添加数据的方式 , 最常用的应该就是按行按列添加数据了 。
按行添加数据 table.add_row在上面简单的示例中 , 我们就是按行添加数据的 。
添加的数据必须要是列表的形式 , 而且数据的列表长度要和表头的长度一样 。 在实际的使用中 , 我们应该要关注到添加的数据是否和表头对应 , 这一点很重要 。
按列添加数据 table.add_column()
运行结果如下:
以上示例中 , 我们通过add_column来按列添加数据 , 按列添加数据不需要在实例化表格的时候制定表头 , 它的表头是在添加列的时候指定的 。table.add_column('项目' ['编号''云编号''名称''IP地址'这一行代码为例 ,
)项目指定了这个列的表头名为\"项目\" , ['编号''云编号''名称''IP地址'为列的值 , 同样为列表 。
从csv文件添加数据PrettyTable不仅提供了手动按行按列添加数据 , 也支持直接从csv文件中读取数据 。
如果要读取cvs文件数据 , 必须要先导入from_csv , 否则无法运行 。 上面的示例运行结果如下:
PS:csv 文件不能通过 xls 直接重命名得到 , 会报错 。 如果是 xls 文件 , 请用另存为 csv 获得 csv 文件
- 湖北|巅峰摩擦?i9 12950HX与R9 6900HX专业应用差距有多大?
- iPhoneSE|国产手机拍照哪家强?目前这3款堪比专业单反的手机,拍照党狂喜
- 嘉定这家专业用品市场推出“云逛店”模式
- 矽源特NS4215是超低 EMI无需滤波器每声道输出7.5W的D类立体声音频功率放大器
- Java|合肥恒泽冠雨讲坛:哪些方法能够快速输出抖音视频内容?
- Python|十年质保、3400MB/S!279元买512GB NVMe高速固态硬盘
- 格力电器|不要再说Python难了,按照这个学习路线,四周速成Python
- 联想|适合大一新生电气自动化专业的两款联想笔记本电脑
- 5g消息|软件工程专业的同学,五千以内的电脑配置够用
- Python|华为再造新车!问界M7揭下外企的遮羞布,余承东:超越百万豪车
