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 d.has_key(pair[0]):
d[pair[0]]=d[pair[0]]+tuple(pair[1])
else:
d[pair[0]]=tuple(pair[1])
print d
{1: ('A', 'B'), 2: ('C',)}
是否有更优雅的Pythonic解决方案来完成这项任务?
本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/python-liebiaodaomeigejianyouduogezhidezidianzhuanhuan.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:9 月 19, 2019 at 02:57 上午