我正在使用Tabulate 0.7.7包来制作每个键有两个值的字典。
我有这个代码。
from tabulate import tabulate
d = {"Dave":("13", "Male") , "Sarah":("16", "Female")}
headers = ["Name", "Age", "Gender"]
print(tabulate(d.items(), headers = headers))
我希望制作下表 -
Name Age Gender
------ ----- ---------
Dave 13 Male
Sarah 16 Female
但是,代码如下表所示 -
Name Age
------ ----------------
Dave ('13', 'Male')
Sarah ('16', 'Female')
我该如何解决这个问题?
答案 0 :(得分:2)
如果您将字典项展平,从(k,(v1,v2))到(k,v1,v2),您可以获得正确的格式:
from tabulate import tabulate
d = {"Dave":("13", "Male") , "Sarah":("16", "Female")}
headers = ["Name", "Age", "Gender"]
print(tabulate([(k,) + v for k,v in d.items()], headers = headers))
Name Age Gender
------ ----- --------
Sarah 16 Female
Dave 13 Male
答案 1 :(得分:1)
我不确定根据输入数据d
的结构是否可行。
重新格式化您的数据(见下文)将得到所需的结果。
d = {'Name': ['Dave', 'Sarah'], 'Age': [13, 16], 'Gender': ['Male', 'Female']