我有一本字典
input = {
1:[23,24],
2:[21],
3:[23],
4:[]
}
我想要这样的输出:-
output = (1,23),(1,24),(2,21),(3,23)
我使用两个 for 循环完成了此操作:-
>>> for key in input:
... for value in input[key]:
... print """(""" + str(key) + """,""" +str(value) + """)"""
...
(1,23)
(1,24)
(2,21)
(3,23)
有人可以告诉我另一种方法吗?使用一些迭代器工具或任何其他方式?
谢谢
请您参考如下方法:
>>> [(key, value) for key, values in input.items() for value in values]
>>> [(1, 23), (1, 24), (2, 21), (3, 23)]
>>> '\n'.join('({},{})'.format(key, value) for key, values in input.items() for value in values)
'(1,23)\n(1, 24)\n(2, 21)\n(3, 23)'
>>> print('\n'.join('({},{})'.format(key, value) for key, values in input.items() for value in values))
(1,23)
(1,24)
(2,21)
(3,23)
>>> ','.join('({},{})'.format(key, value) for key, values in input.items() for value in values)
'(1,23),(1,24),(2,21),(3,23)'
