2024-09-27 09:28:59 发布
网友
从给定参数中找到最接近但更高值的键的最简单的方法是什么
例如,与
dict = {'a': 78.0, 'b': 87.0, 'c': 92.0},
功能
f(dict, 89.0)
会回来吗
c
以下是一个可能的解决方案:
def f(dct, val): try: return min((v, k) for k, v in dct.items() if v >= val)[1] except ValueError: return None
以下是一些例子:
>>> dct = {'a': 78.0, 'b': 87.0, 'c': 92.0} >>> f(dct, 89) 'c' >>> f(dct, 93) >>> f(dct, 75) 'a' >>> f(dct, 79) 'b'
如果您使用的是Python>;3.4您可以为min内置函数使用“default”关键字:
min
def f(dct, val): return min(((v, k) for k, v in dct.items() if v >= val), default=(None, None))[1]
以下是一个可能的解决方案:
以下是一些例子:
如果您使用的是Python>;3.4您可以为
min
内置函数使用“default”关键字:相关问题 更多 >
编程相关推荐