<td>服务器01</td>
<td>172.16.0.1</td>
</tr>
<tr>
<td>2</td>
<td>server02</td>
<td>服务器02</td>
<td>172.16.0.2</td>
</tr>
</table>'''
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的必须是列表中的第一个元素 , 否则有可能会报这样的错误 。
这是因为table
并不是PrettyTable对象 , 而是包含单个PrettyTable对象的列表 , 它通过解析html而来 , 所以无法直接打印table
, 而需要打印table[0]
文章插图
表格输出格式
正如支持多种输入一样 , 表格的输出也支持多种格式 , 我们在上面中的例子中已经使用了print的方式输出 , 这是一种常用的输出方式 。
A、print直接通过
print
打印出表格 。这种方式打印出的表格会带边框 。B、输出HTML格式的表格
print(table.get_html_string)
可以打印出html标签的表格 。在上面的例子中 , 使用
print(table.get_html_string)
会打印出如下结果:<table>
<tr>
<th>编号</th>
<th>云编号</th>
<th>名称</th>
<th>IP地址</th>
</tr>
<tr>
<td>1</td>
<td>server01</td>
<td>服务器01</td>
<td>172.16.0.1</td>
</tr>
<tr>
<td>2</td>
<td>server02</td>
<td>服务器02</td>
<td>172.16.0.2</td>
</tr>
</table>
文章插图
选择性输出prettytable在创建表格之后 , 你依然可以有选择的输出某些特定的行.
A、输出指定的列
print table.get_string(fields=["编号", "IP地址"])
可以输出指定的列B、输出前两行通过
print(table.get_string(start = 0, end = 2))
的可以打印出指定的列 , 当然start
和end
参数让我可以自由控制显示区间 。当然区间中包含start
不包含end
, 是不是很熟悉这样的用法?根据输出指定行列的功能 , 我们可以同时指定行和列来输出 , 这里就不说明了 。
C、将表格切片从上面的输出区间 , 我们做一个大胆的假设 , 既然区间包含
start
不包含end
这种规则和切片的一样 , 我们可以不可通过切片来生成一个新的表格然后将其打印 。事实上是可以的 。
new_table = table[0:2]
print(new_table)
如上代码段中 , 我们就可以打印出0到1行共2行的表格 , python的切片功能异常强大 , 配合切片我们可以自由的输入任意的行 。
D、输出排序有时候我们需要对输出的表格进行排序 , 使用
print table.get_string(sortby="编号", reversesort=True)
就可以对表格进行排序 , 其中reversesort
指定了是否倒序排序,默认为False
, 即默认正序列排序 。sortby
指定了排序的字段 。文章插图
表格的样式A、内置样式通过
set_style
可以设置表格样式 , prettytable内置了多种的样式个人觉得MSword_FRIENDLY
, PLAIN_COLUMNS
, DEFAULT
这三种样式看起来比较清爽 , 在终端下显示表格本来看起就很累 , 再加上一下花里胡哨的东西看起来就更累 。除了以上推荐的三种样式以外 , 还有一种样式不得不说 , 那就是
推荐阅读
- 让人又爱又恨的Lombok,到底该不该用
- 淘宝网店转让怎么转 淘宝店铺能不能转让
- 常吃7种养颜素食 让你轻松拥有美丽容貌
- 素食者十字口诀 让你不再担心营养不够
- 4月1日即将实施驾驶证新规,5个新变化,一次性告诉你
- 打动女人的心六个绝招,让她离不开
- 怎么学瑜伽呢?
- 淘宝转让需要什么手续 淘宝店铺可以转让吗?
- 淘宝8年案例解读大厂如何开发和部署前端代码
- 司机高速上睡了半小时,车内“无人驾驶”48公里,让人无法相信