Python - 在列表中查找最接近0的整数

gad*_*tmo 6 python algorithm numbers list

可能重复:
找到最接近列表中未完全排序的值的项目的索引

我在Python([237, 72, -18, 237, 236, 237, 60, -158, -273, -78, 492, 243])中有一个正数和负数的列表.我想找到最接近0的数字.我该怎么做?

Ósc*_*pez 36

这个怎么样:

lst = [237, 72, -18, 237, 236, 237, 60, -158, -273, -78, 492, 243]
min((abs(x), x) for x in lst)[1]
Run Code Online (Sandbox Code Playgroud)

一个很好的,更简短的答案:

min(lst, key=abs)
Run Code Online (Sandbox Code Playgroud)

  • 如果负数和正数最接近 0,则始终返回负数。 (3认同)