计算最接近给定值的数值有很多方法,其中使用 min()
函数中的 key
参数即可
In [1]: num = [1, 88, 44, 8, 4, -2, 3]
In [2]: min(num, key=lambda x: abs(x-40))
Out[2]: 44
将核心算法封装为函数
def take_closest(num, collection):
return min(collection, key=lambda x:abs(x-num))