如何在python中找到范围重叠?
Python中确定两个范围中的哪些值重叠的最佳方法是什么?
例如:
x = range(1,10)y = range(8,20)
(The answer I am looking for would be the integers 8 and 9.)
给定一个范围x,最好的方法是迭代另一个范围y并输出两个范围共享的所有值?在此先感谢您的帮助。
编辑:
作为后续,我意识到我还需要知道x是否与y重叠。我正在寻找一种方法来遍历范围列表,并做一些范围重叠的其他事情。是否有简单的True / False语句来完成此操作?
回答:
尝试设置交集:
>>> x = range(1,10)>>> y = range(8,20)
>>> xs = set(x)
>>> xs.intersection(y)
set([8, 9])
请注意,intersection
接受任何可迭代的参数作为参数(y
不需要将其转换为该操作的集合)。有一个等效于该intersection
方法的运算符:&
但是,在这种情况下,它要求两个参数都必须是set 。
以上是 如何在python中找到范围重叠? 的全部内容, 来源链接: utcz.com/qa/422312.html