我有一个列表 l增加值,例如
import numpy as np
l=np.linspace(0.,1.,10)
对于一个数字 a=0.225 , 我想找到索引 i这样 l[i]<a<l[i+1] .当然,我可以做到
for j in range(len(l)-1):
if l[j]<a<l[j+1]:
i=j
break
但是有没有更综合的方法来做到这一点?
请您参考如下方法:
如评论中所述,对于l进行排序,我们可以使用np.searchsorted -
np.searchsorted(l,a,'right')-1
或者用np.digitize -
np.digitize(a,l,right=True)-1
