我想将数组:[2, 4, 6, 9] 与间隔矩阵 (m*n) 进行比较:
[[0,1], [0,1], [0,1], [0,1]
[1,2], [1,2], [1,2], [1,2]
. . . .
. . . .
. . . . ]
如果数字不在该区间内,则结果将是一个矩阵 (m*n),其中 0 或在其他情况下为 1。
一种方法是使用嵌套列表理解
data = [[0, 1], [0, 1], [1, 2], [1, 5], [5, 10], [11, 20]]
check = [2, 4, 6, 9]
result = [any(1 if l <= y <= r else 0 for y in check) for l, r in data]
# [False, False, True, True, True, False]
如果您想要 0 或 1,您可以使用以下
result = [max(1 if l <= y <= r else 0 for y in check) for l, r in data]
# [0, 0, 1, 1, 1, 0]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句