怎样将包含元组的列表转换为字典?

比如下面这种的:

list = [
    (a, 1),
    (a, 2),
    (c, 3),
    (d, 4),
    (d, 5),
    (f, 6)
]

转换成下面这种

dict = {
    'a': [1, 2],
    'c': 3,
    'd': [4, 5],
    'f': 6
}
阅读 10.1k
1 个回答
方法一:
dt = {}
for (m,n) in ls:
    dt.setdefault(m,[]).append(n)
方法二:
from collections import defaultdict
dt = defaultdict(list)
for (m,n) in ls:
    dt.append(n)  

ps:上面ls->list,dt->dict,最终得到结果和你的稍微有点不同,是dt的值的都是list。另外你list里a应该是'a',其他类似。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题