python在不同的行中打印多个键值

时间:2014-09-03 10:12:06

标签: python

我有一个字典,每个键包含多个值(列表):

one = [1,2,3]
two = [1,2,3]
three= [1,2,3]

使用以下代码行获得:

output_file.write('{0}\t{1}\n'.format(key,"\t".join(value)))

所以我的最终打印输出如下所示:

one 1 2 3
two 1 2 3
three 1 2 3

我现在的目标是让输出看起来像这样:

one 1
one 2
one 3
two 1
two 2
…

任何提示?

3 个答案:

答案 0 :(得分:1)

您可以将密钥本身添加为分隔符

#key = "one"
#value = ['1','2','3']
print(key+'\t'+'\n{0}\t'.format(key).join(value))

<强>输出

one    1
one    2
one    3

答案 1 :(得分:0)

您可以使用嵌套的for循环执行此操作:

for key, value_list in my_dict.iteritems():
    for value in value_list:
        output_file.write("{}\t{}\n".format(key, value))

答案 2 :(得分:0)

这也可能有用......

#key = "one"
#value = ['1','2','3']
print '\n'.join(map(lambda i: key+'\t'+str(i), value))