如何将列表的dict格式化为表格
发布时间:2020-12-20 12:29:48 所属栏目:Python 来源:网络整理
导读:我有一个包含字符串列表的dict,并希望将所有内容打印为终端中的表格,格式如下: +----------------------------------------------+| key1 | key2 | key3 | key4 |+----------------------------------------------+| val_1 | val_1 | val_1 | val_1 ||-----
我有一个包含字符串列表的dict,并希望将所有内容打印为终端中的表格,格式如下:
+----------------------------------------------+ | key1 | key2 | key3 | key4 | +----------------------------------------------+ | val_1 | val_1 | val_1 | val_1 | |----------|----------|-----------|------------| | val_2 | val_2 | val_2 | val_2 | +----------------------------------------------+ 等等 有一个惊人的模块或一个简单的方法来实现这一目标吗?我有一个列宽,我通过找到每个列表中最长的val得到. 解决方法
你可以使用
PrettyTable .
>我对键进行了排序,并对值进行了排序.这产生了可预测的输出. . #! /usr/bin/env python from prettytable import PrettyTable d1 = { "key1":["val1_1","val1_2"],"key2":["val2_1","val2_2"],"key3":["val3_1","val3_2"],"key4":["val4_1","val4_2"],} table = PrettyTable() for key,val in sorted(d1.iteritems()): table.add_column(key,sorted(val)) print table 结果是: $./t +--------+--------+--------+--------+ | key1 | key2 | key3 | key4 | +--------+--------+--------+--------+ | val1_1 | val2_1 | val3_1 | val4_1 | | val1_2 | val2_2 | val3_2 | val4_2 | +--------+--------+--------+--------+ PrettyTable还提供HTML格式.用以下内容替换打印表: print table.get_html_string(attributes={"size":"100%","class":"MyTable"}) 你得到: <table border="1" class="MyTable" size="100%"> <tr> <th>key1</th> <th>key2</th> <th>key3</th> <th>key4</th> </tr> <tr> <td>val1_1</td> <td>val2_1</td> <td>val3_1</td> <td>val4_1</td> </tr> <tr> <td>val1_2</td> <td>val2_2</td> <td>val3_2</td> <td>val4_2</td> </tr> </table> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |