我有一个简单的问题(或者是我想的)。

我有一本字典,可以说它看起来像这样:

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/

10-14 17:39
查看更多