我有一个案例,我有两个任意长度的列表。这些列表中的每个值都是n个浮点值的另一个列表。
a = [[0.8,0.9,1.], [0.5,2.6,2.2], [1.5,5.6], [5.8,2.3,1.9],]
b = [[0.8,0.91,1.01], [2.5,4.6,8.8], [1.49,5.59],]
我想比较两个列表中的值,并找到不在给定容差范围内的值。
我感兴趣的是在纯Python中实现这一目标的最有效方法,而不需要恢复编译代码或多线程,并且只使用标准库。希望我能在这个过程中学到更多东西!
示例:
给定0.001的容差,这是两个比较值之间的最大距离的度量,比较列表a和b将返回:
匹配a和b中的值:
am = [[0.8,0.9,1。],[1.5,5.6],]
be = [[0.8,0.91,1.01],[1.49,5.59],]
不匹配的值:
anm = [[0.5,2.6,2.2],[5.8,2.3,1.9],]
bnm = [[2.5,4.6,8.8],]
我们也可以期待没有重复。这有帮助吗?
答案 0 :(得分:2)
使用列表理解你可以实现这个
result = [ y for x in a for y in x if low<=y<=high]
此代码会为您提供low
和high