产业气象站:5个案例让Python输出漂亮的表格!( 二 )
运行结果如下:
+-------+--------+------------+|index|项目|值|+-------+--------+------------+|1|编号|1||2|云编号|server01||3|名称|服务器01||4|IP地址|172.16.0.1|+-------+--------+------------+
以上示例中 , 我们通过add_column来按列添加数据 , 按列添加数据不需要在实例化表格的时候制定表头 , 它的表头是在添加列的时候指定的 。
table.add_column("项目",["编号","云编号","名称","IP地址"])这一行代码为例 , 项目指定了这个列的表头名为"项目" , ["编号","云编号","名称","IP地址"]为列的值 , 同样为列表 。
C、从csv文件添加数据
PrettyTable不仅提供了手动按行按列添加数据 , 也支持直接从csv文件中读取数据 。
#!/usr/bin/python#**coding:utf-8**importsysfromprettytableimportPrettyTablefromprettytableimportfrom_csvreload(sys)sys.setdefaultencoding("utf8")table=PrettyTable()fp=open("res.csv","r")table=from_csv(fp)print(table)fp.close()
如果要读取cvs文件数据 , 必须要先导入from_csv , 否则无法运行 。 上面的示例运行结果如下:
+------+----------+----------+------------+|编号|云编号|名称|IP地址|+------+----------+----------+------------+|1|server01|服务器01|172.16.0.1||2|server02|服务器02|172.16.0.2||3|server03|服务器03|172.16.0.3||4|server04|服务器04|172.16.0.4||5|server05|服务器05|172.16.0.5||6|server06|服务器06|172.16.0.6||7|server07|服务器07|172.16.0.7||8|server08|服务器08|172.16.0.8||9|server09|服务器09|172.16.0.9|+------+----------+----------+------------+
csv文件不能通过xls直接重命名得到 , 会报错 。 如果是xls文件 , 请用另存为csv获得csv文件D、从sql查询值添加从数据库查询出来的数据可以直接导入到表格打印 , 下面的例子使用了sqlite3,如果使用的是mysql也是一样的 , 只要能查询到数据就能导入到表格中
#!/usr/bin/python#**coding:utf-8**importsysfromprettytableimportPrettyTablefromprettytableimportfrom_db_cursorimportsqlite3reload(sys)sys.setdefaultencoding("utf8")conn=sqlite3.connect("/tmp/aliyun.db")cur=conn.cursor()cur.execute("SELECT*FROMres")table=from_db_cursor(cur)print(table)
运行结果如下:
+------+----------+----------+------------+|编号|云编号|名称|IP地址|+------+----------+----------+------------+|1|server01|服务器01|172.16.0.1||2|server02|服务器02|172.16.0.2||3|server03|服务器03|172.16.0.3||4|server04|服务器04|172.16.0.4||5|server05|服务器05|172.16.0.5||6|server06|服务器06|172.16.0.6||7|server07|服务器07|172.16.0.7||8|server08|服务器08|172.16.0.8||9|server09|服务器09|172.16.0.9|+------+----------+----------+------------+E、从HTML导入数据
支持从html的表格中导入 , 请看下面这个例子:
#!/usr/bin/python#**coding:utf-8**importsysfromprettytableimportPrettyTablefromprettytableimportfrom_htmlreload(sys)sys.setdefaultencoding("utf8")html_string="""编号云编号名称IP地址1server01服务器01172.16.0.12server02服务器02172.16.0.2"""table=from_html(html_string)print(table[0])
运行结果如下:
+------+----------+----------+------------+|编号|云编号|名称|IP地址|+------+----------+----------+------------+|1|server01|服务器01|172.16.0.1||2|server02|服务器02|172.16.0.2|+------+----------+----------+------------+
如上示例中 , 我们可以导入html的表格 , 但是不一样的地方是print语句 , 使用html表格导入数据的时候print的必须是列表中的第一个元素 , 否则有可能会报[]这样的错误 。
推荐阅读
- 「产业气象站」莫比乌斯带原理可以运用到什么地方?,莫比乌斯带怎么做
- 『产业气象站』微纳星空无人机卫通终端产品成功完成批量交付
- 产业气象站■又学了一招,钢中碳含量的7种测定方法
- 产业气象站■项目负责人回应“IPFS在2020年将岌岌可危”
- #产业气象站#单页应用程序是如何打破网页设计的?
- 「科技有点牛」第二届中国集成电路芯片暨微拼装产业链突出重围与自主创新峰会
- 「娱乐中的趣闻」开放共享理念将催熟产业链,5G新基建提速加码云游戏产业
- #产业气象站#华为正式发布openEuler系操作系统,赛意信息(300687.SZ)接近涨停
- 【产业气象站】错觉:AI如何通过数据挖掘误导我们|周末读书
- 【产业气象站】可阻止恶意软件和成人内容,Cloudflare推家庭1.1.1.1公共DNS