我有一本字典,每个项目都有键和值[0]和值[1]。 列表中的值[0]有多个条目,而键和值[1]是单个值。 我想根据下面的输出垂直打印值[0]。
非常感谢!
mydict = {
'1': (['John'], 20),
'2': (['Jane',
'Doe'], 21),
'3': (['Johnny',
'John',
'Roe'], 10),
}
Output:
Id Name Age
1 John 20
2 Jane 21
Doe
3 Johnny 10
John
Roe
我厌倦了直接获取输出但无法获得正确的格式。
for k,v in sorted(mydict.iteritems()):
print k,
print "\n".join(str(x) for x in v[0])
print v[1]
答案 0 :(得分:1)
这应该可以解决问题,但根据您的代码段,您似乎使用的是2.x版本,在这种情况下,为了兼容性,您需要将mydict.items
更改为mydict.iteritems
。
for k,v in sorted(mydict.items()):
print(k)
im_a_string = ""
for i in v[0]:
im_a_string += i + " "
print(im_a_string.rstrip())
print(v[1])
输出:
1
John
20
2
Jane Doe
21
3
Johnny John Roe
10
但是,如果您只是尝试打印字典中的(键:值)对,则以下内容应该有帮助...来了2.x与3.x兼容性问题适用:
my_dict={}
my_dict["im a key"] = "im a value"
my_dict["im another key"] = "im another value"
my_dict
for key,value in my_dict.items():
print(key + " : " + value)
将提供以下输出:
im a key : im a value
im another key : im another value