Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 间隔重叠大小_Python_Math_Intervals - Fatal编程技术网

Python 间隔重叠大小

Python 间隔重叠大小,python,math,intervals,Python,Math,Intervals,Python中计算间隔重叠大小的最简洁方法是什么 重叠([a,b],[c,d])如果间隔相同,则返回0;如果间隔重叠但不相同,则返回N(其中N为重叠);如果间隔不重叠,则返回None 谢谢 编辑:overlap具有误导性,我指的是间隔不重叠的大小。因此,0表示它们是相同的。这并没有比sjr链接的问题中的公认答案更简洁,但是: def overlap(a,b,c,d): r = 0 if a==c and b==d else min(b,d)-max(a,c) if r>=0

Python中计算间隔重叠大小的最简洁方法是什么

重叠([a,b],[c,d])
如果间隔相同,则返回0;如果间隔重叠但不相同,则返回N(其中N为重叠);如果间隔不重叠,则返回None

谢谢


编辑:
overlap
具有误导性,我指的是间隔不重叠的大小。因此,0表示它们是相同的。

这并没有比sjr链接的问题中的公认答案更简洁,但是:

def overlap(a,b,c,d):
    r = 0 if a==c and b==d else min(b,d)-max(a,c)
    if r>=0: return r

如果间隔相同,则返回0;如果间隔不重叠,则返回None。

?如果间隔相同,为什么要返回0?当间隔重叠但不相同时,这似乎与返回N不一致。请给出一个重叠的示例。这将澄清问题。请澄清N是重叠的大小还是非重叠的大小。如果间隔接触,该怎么办,即
重叠([1,2],[2,4])
返回什么?应为相同的间隔返回0,而不是
。此外,您编写的函数对于任何输入都将返回
None