从另一个列表中获取项目的边界

2023-12-31

我有一个清单,就像

tlist = [0.0, 0.07, 0.13, 0.15, 0.2, 0.22] (which is sorted)

我还有另一个清单,

newlist = [0.0, 0.04, 0.08, 0.12, 0.16, 0.2] (numbers with a difference of 0.04)

我必须遍历第二个列表中的每个项目,并检查该数字位于哪个边界(位于 tlist 中的两个数字之间)。

就像我正在检查第二个列表中的第一个项目“0.0”一样,那么它落在第一个列表中的“0.0”和“0.07”之间。

类似地,第二个列表中的下一项“0.04”在第一个文件中再次落在“0.0”和“0.07”之间。

因此,对于从第二个列表中检查的每个项目,它应该知道其边界。它应该设定界限。结果可能类似于“0.0”的范围是 x 到 y,其中 x = 0.0 且 y = 0.07。

如果 tlist 中有一个数字与 newlist 中的数字之一完全相同,那么程序应该忽略它,或者可以打印一条语句,如“没有边界可能”并继续处理下一个数字。

我如何将其放入代码中。谢谢。


简单的方法使用enumerate:

for n in newlist:
    for i, t in enumerate(tlist):
        if t > n:
            # found upper boundry, previous must be equal or lower
            upper, lower = t, tlist[i-1]
            break
    print lower, n, upper
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从另一个列表中获取项目的边界 的相关文章

随机推荐