我在python中有两个时间范围,我想找出它们之间是否有任何重叠。我正在为此寻找一种算法。 例如,我有以下时间范围:
r1 = start=(15:30:43), end=(16:30:56)
r2 = start=(15:40:35), end=(15:50:20)
如何在python中找到它们之间的重叠?
答案 0 :(得分:1)
您可以按如下方式使用DatetimeIndex
包中的pandas
个对象:
import pandas as pd
# create DatetimeIndex objects with *seconds* resolution
dtidx1 = pd.date_range('15:30:43', '16:30:56', freq='S')
dtidx2 = pd.date_range('15:40:35', '15:50:20', freq='S')
# use the DatetimeIndex.intersection method to get another
# DatetimeIndex object whose values are what you requested
dtidx1.intersection(dtidx2)