Mal*_*lgi 5 python dictionary tuples list
我有一个元组列表,如:
[(1, 'a', 22), (2, 'b', 56), (1, 'b', 34), (2, 'c', 78), (3, 'd', 47)]
Run Code Online (Sandbox Code Playgroud)
我需要将其转换为:
{1: {'a': 22, 'b': 34}, 2: {'b': 56, 'c': 78}, 3: {'d': 47}}
Run Code Online (Sandbox Code Playgroud)
这可能在Python中吗?谢谢!
使用defaultdict:
from collections import defaultdict
l = [(1, 'a', 22), (2, 'b', 56), (1, 'b', 34), (2, 'c', 78), (3, 'd', 47)]
d = defaultdict(dict)
for x, y, z in l:
d[x][y] = z
Run Code Online (Sandbox Code Playgroud)
setdefault
是你的朋友:
d = {}
for t in l:
d.setdefault(t[0],{})[t[1]]=t[2]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
121 次 |
最近记录: |