检查范围的元素是否在列表列表内

Ale*_*Man 2 python list range

我有一个排序列表,一个范围包含多个列表:

>>>  n= [10, 20, 30, 40]
>>>  m= [[1, 20], [21, 30]]
Run Code Online (Sandbox Code Playgroud)

我想做的是检查n列表中的所有元素是否都在现有范围内m。例如,根据以上示例,40不在任何范围内。

我试图在下面的帖子中扩展问题的答案,但似乎不起作用。

检查列表列表的所有元素是否在另一个列表列表Python中

is_there = set(tuple(x) for x in [n]).issubset(tuple(x) for x in m)
Run Code Online (Sandbox Code Playgroud)

bus*_*ear 5

You should go through each element in n and check if it's in the range of each list of m. Assuming you are only working with ints:

[any(x in range(r[0], r[1]) for r in m) for x in n]
Run Code Online (Sandbox Code Playgroud)

If you want to include the end of your range, just add 1:

[any(x in range(r[0], r[1]+1) for r in m) for x in n]
Run Code Online (Sandbox Code Playgroud)