Removing all the keys with multiple occurence of values in Python
1 2 3 4 | dct={'a':3,'b':1,'c':1,'d':1,'e':2,'f':2} for key in dct.values(): #code |
我找不到删除所有具有相同值的键的方法,我的输出应该是:
{ a:3 }
基本上,我只想删除一个有多个值出现的字典,该值不是1或2,它可以是任何#
尝试这个的理解:
1 | new_dct = {k: v for k, v in dct.items() if list(dct.values()).count(v) <= 1} |
这不会删除从您的原始字典的字典生成一个新的,但只有在键和值是不是在复制原来的价值在你的字典。
<注意> *子:在Python 3.x的
简单的解决方案
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | dct={'a':3,'b':1,'c':1,'d':1,'e':2,'f':2} d = {} allu = []; lulu = []; for k, v in dct.items(): if v in allu: lulu.append(v) allu.append(v) d = dict(dct) for k,v in d.items(): if v in lulu: del dct[k] print(dct) |