『产业气象站』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的必须是列表中的第一个元素 , 否则有可能会报[]这样的错误 。
推荐阅读
- 「产业气象站」5G时代大有可为?2020为何会出现5G无用论?
- 「产业气象站」如果瘫痪了会造成什么影响,用于海上风电功率预测的系统
- 产业气象站▲固守高端显示技术领先地位,三星、LGD皆弃LCD
- 「产业气象站」莫比乌斯带原理可以运用到什么地方?,莫比乌斯带怎么做
- 『产业气象站』微纳星空无人机卫通终端产品成功完成批量交付
- #懒人科技网#敦煌网赋能小微企业共克时艰,做“全球数字化产业中台”
- 许昌报业传媒集团@“许职院”干了件大事!携手华为、黄河科技集团等知名企业成立“鲲鹏产业学院”
- 「秀山县秀山网」深入助力贫困户增收,付万春:以产业发展为跳板
- 国际万花筒@韩国成为第15个确诊过万的国家!境外输入、无症状感染增长快
- [汽车资讯]快来看看你家附近有没有?,好消息!这个区施划85个潮汐停车位
