如何找到给定数字与 Python 列表中每个元素之间的最小差异?

4 python numpy list subtraction

假设我有:

[1, 2, 3, 4]

和整数

6

我想6与列表中的每个元素进行比较,并返回绝对值差最小的元素,在本例中为4。有没有一种有效的Numpy方法来做到这一点?

Psi*_*dom 5

您可以使用argmin绝对差来提取索引,然后可以使用索引来提取元素:

a = np.array([1, 2, 3, 4])

a[np.abs(a - 6).argmin()]
# 4
Run Code Online (Sandbox Code Playgroud)