我有两个列表都包含数字,我想检查一个列表中的数字是否是另一个列表中每两个数字之间的数字? “其他”列表中的数字是有序的,因此每两个数字是一个区间,如 234、238、567、569、2134、2156。
ListA = [200, 765, 924, 456, 231]
ListB = [213, 220, 345, 789, 12, 45]
我想检查 ListA[0:] 是否是介于 ListB[0:1] 或 [2:3] 之间的数字。
我试过这个:
for i in range(0,len(ListB), 2):
for x in ListA:
if i < x < (i:i+2):
print 'within range'
但是我得到“i:i+2”的语法错误:(
请您参考如下方法:
如果您想要做的是确保列表 A 中的所有项目至少列表 B 中的间隔之一:
>>> listA = [200, 765, 924, 456, 231]
>>> listB = [213, 220, 345, 789, 12, 45]
>>> intervals = zip(*[listB[i::2] for i in range(2)])
>>> [any(low < x < high for low, high in intervals)
for x in listA]
[False, True, False, True, False]
