from decimal import *
li = [1.23, 1.25, 1.3, 1.59, 1.52, 1.50, 1.7, 1.33, 1.22, 1.22, 1.9, 1.2]
defaultnumber = 1.51
select = Decimal(str(defaultnumber)) - Decimal(str(li[0]))
index = 0
for i in range(1, len(li) - 1):
select2 = Decimal(str(defaultnumber)) - Decimal(str(li[i]))
if (abs(select) > abs(select2)):
select = select2
index = i
select = min(select, abs(select2))
print('结果', li[index], index)
输入:li = [1.23, 1.25, 1.3, 1.59, 1.52, 1.50, 1.7, 1.33, 1.22, 1.22, 1.9, 1.2]
输出: