【发布时间】:2018-03-14 04:44:24
【问题描述】:
我有一个列表,其中包含一系列从负到正的随机浮点数,例如:
values = [0.001, 0.05, 0.09, 0.1, 0.4, 0.8, 0.9, 0.95, 0.99]
我希望过滤掉首先满足大于/小于我希望的值的索引。例如,如果我想要第一个小于 0.1 的最接近的值,我会得到 2 的索引,如果我想要大于 0.9 的第一个最高值,我会得到 7。
我正在使用find_nearest 方法,但由于此数据集是随机的,因此并不理想。
编辑:想出了一个解决方案。
low = next(x[0] for x in enumerate(list(reversed(values))) if x[1] < 0.1)
high = next(x[0] for x in enumerate(values) if x[1] > 0.9)
【问题讨论】:
-
那些不是整数?
-
错字,现在更正。
标签: python list sorting filter find