gpt4 book ai didi

python - 让 max(dict_name.values()) 忽略字符串

转载 作者:行者123 更新时间:2023-12-01 04:16:05 25 4
gpt4 key购买 nike

我正在使用 Python 2.7 获取与名为“names”的字典中的最大值关联的名称,其中每个名称的值都是一个数字(具体来说,他们的年薪)。我已经使用了代码
最大值(名称.值())
问题在于,一些值丢失并被编码为“NaN”,而这恰好是 Python 眼中的最大值。有没有某种方法可以将 max() 函数限制为数值并使其忽略非数值?

一旦获得最大值,有没有办法使用该最大值来查找与其关联的名称(字典键)?

谢谢!

最佳答案

您可以预先过滤掉所有字符串:

seq = [x for x in names.values() if not isinstance(x, str)]
print max(seq)

或者您可以提供一个关键函数,为字符串提供巨大的负值:

print max(names.values(), key=lambda x: x if not isinstance(x, str) else float("-inf"))

关于python - 让 max(dict_name.values()) 忽略字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34299244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com