我有一个简单的问题(或者是我想的)。
我有一本字典,可以说它看起来像这样:
dict = {'A':100, 'a':10, 'T':50, 't':5}
我只想删除具有最高值的 key 。我尝试了这个:
del max(dict.values())
这是错误消息:“语法错误:无法删除函数调用”。
我希望最终结果是:
dict = {'a':10, 'T':50, 't':5}
最佳答案
max(d.values())
将为您提供最大值(100),但是要从字典中删除条目,您需要相应的键('A'
)。
你可以这样做:
d = {'A':100, 'a':10, 'T':50, 't':5}
key_to_delete = max(d, key=lambda k: d[k])
del d[key_to_delete]
顺便说一句,您不应该将字典命名为
dict
,因为那是内置类型的名称。如果可能有多个条目具有相同的最大值,并且您要删除所有这些条目,请执行以下操作:
val_to_delete = max(d.values())
keys_to_delete = [k for k,v in d.iteritems() if v==val_to_delete]
for k in keys_to_delete:
del d[k]
关于python - 如何从具有最高值的字典中删除键?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9685423/