Re: [问题] 找出dict中有相同value的key

楼主: pingxx123 (皮)   2019-12-21 09:36:33
※ 引述《renshin (阿信)》之铭言:
: 请问要如何用dict中的value找key呢?
: 例如有个dict
: d = {'a':'100', 'b':'200', 'c':'200', 'd':'100', 'e':'150'}
: 想把带有相同value的key集合起来成各自一个list
: 或者可能形成一个新的dict,如
: Newd = {'100':['a','d'], '150':'e', '200':['b','c']}
: 请问有大大可以教一下新手小嫩吗?
: 谢谢
使用defaultdict()加串行append()
from collections import defaultdict
d = {'a':'100', 'b':'200', 'c':'200', 'd':'100', 'e':'150'}
Newd = defaultdict(list)
for key, value in d.items():
Newd[value].append(key)
print(d)
print(Newd)
Newd[value]因为defaultdict(list)的关系,可以看成是一个串行
如果是串行的话,就可以使用.append()来加入新成员
作者: renshin (阿信)   2019-12-24 10:13:00
感谢大大教学,之后再转成dict就可以用了

Links booklink

Contact Us: admin [ a t ] ucptt.com