【发布时间】:2011-07-19 16:36:26
【问题描述】:
我有一个包含键/值对的 Python 列表:
l = [[1, 'A'], [1, 'B'], [2, 'C']]
我想将列表转换为字典,其中每个键的多个值将聚合成一个元组:
{1: ('A', 'B'), 2: ('C',)}
迭代解法很简单:
l = [[1, 'A'], [1, 'B'], [2, 'C']]
d = {}
for pair in l:
if pair[0] in d:
d[pair[0]] = d[pair[0]] + tuple(pair[1])
else:
d[pair[0]] = tuple(pair[1])
print(d)
{1: ('A', 'B'), 2: ('C',)}
对于这项任务,是否有更优雅的 Pythonic 解决方案?
【问题讨论】:
标签: python list dictionary type-conversion