我在Python 3.6中使用Tabulate version 0.7.7
到目前为止,这是我使用字典进行简单测试的代码。
from tabulate import tabulate
d = {"Dave":"13", "Bob":"15"}
headers = ["Name", "Age"]
print(tabulate(d, headers = headers))
我想要的结果是
Name Age
------ -----
Dave 13
Bob 15
但我得到的是
Name Age
------ -----
1 1
3 5
有人能帮助我吗?
一个问题 - 我可以使用制表来解决这个问题,还是应该使用不同的python包?
答案 0 :(得分:3)
您可以访问dict的items
属性。像这样。它会给你你想要的结果。
>>> print(tabulate(d.items(), headers = headers))
Name Age
------ -----
Bob 15
Dave 13
答案 1 :(得分:1)
您需要列出元组列表。使用字典执行此操作的一种方法是使用解压缩项目,如下所示:
<entry>
<record>558</record>
<time>2017/02/14 14:10:08.617</time>
<type>Error</type>
<source>VisualStudio</source>
<description>Loading UI library</description>
<guid>{8C0C630B-37F1-11E3-8259-6C3BE516EAD0}</guid>
<hr>800a006f</hr>
</entry>
返回
from tabulate import tabulate
d = {"Dave":"13", "Bob":"15"}
headers = ["Name", "Age"]
print(tabulate(d.items(), headers = headers))
或者,您可以使用不同的列表并将它们压缩在一起。 Tabulate正在寻找看起来像这样的输入:
Name Age
------ -----
Dave 13
Bob 15
返回:
names = ['Dave','Bob']
ages = ['13','15']
d = zip(names,ages)
print(d)