How to get number closest to a given value from a list of integers with Python?

Sometimes, we want to get number closest to a given value from a list of integers with Python.

In this article, we’ll look at how to get number closest to a given value from a list of integers with Python.

How to get number closest to a given value from a list of integers with Python?

To get number closest to a given value from a list of integers with Python, we can use the min function with the key parameter set to a function that returns the absolute difference between the value and the number in the list.

For instance, we write:

my_num = 100
l = [29, 58, 129, 487, 41]
closest = min(l, key=lambda x: abs(x - my_num))
print(closest)

We have my_num which is the number we want to get the closest value to from the list l.

To do that, we call min with l and key set to lambda x: abs(x - my_num)).

lambda x: abs(x - my_num)) returns the absolute difference between x which is an entry in l and my_num.

And then we assign the returned number to closest.

Therefore, closest is 129.

Conclusion

To get number closest to a given value from a list of integers with Python, we can use the min function with the key parameter set to a function that returns the absolute difference between the value and the number in the list.