Python-查找时隙

Python-查找时隙,python,Python,我正在编写一个小Python脚本,根据日历约会查找可用的时间段。我可以重用这里帖子上的代码:() 对于一个小时或更长时间的预约来说,这似乎是有效的,但对于那些不到一小时的预约来说,这似乎并不适用。换句话说,即使预约已预订(少于一个小时),它也会显示可用的时段 下面的示例代码来自前面提到的帖子,带有我自己的“小时”和“约会”值 问题是,虽然9:30-12:30之间的第一次约会被阻止,并且没有出现在可用的时段中,但随后的13:30-2:00约会没有被阻止,因此在时段输出中显示为可用。(见“13:30

我正在编写一个小Python脚本,根据日历约会查找可用的时间段。我可以重用这里帖子上的代码:()

对于一个小时或更长时间的预约来说,这似乎是有效的,但对于那些不到一小时的预约来说,这似乎并不适用。换句话说,即使预约已预订(少于一个小时),它也会显示可用的时段

下面的示例代码来自前面提到的帖子,带有我自己的“小时”和“约会”值

问题是,虽然9:30-12:30之间的第一次约会被阻止,并且没有出现在可用的时段中,但随后的13:30-2:00约会没有被阻止,因此在时段输出中显示为可用。(见“13:30-14:30”)

我是一个Python新手,我承认我在没有完全理解的情况下回收了代码。有人能告诉我该做些什么改变,以便在不到一小时的时间内将约会完全排除在外吗

蒂亚


-克里斯

你错过了约会中的括号。试试这个:

#from datetime import datetime, timedelta
import datetime

#notice the additional brackets to keep the 2 slots as two separate lists. So, 930-1230 is one slot, 1330-1400 is an another.

appointments = [(datetime.datetime(2017, 9, 7, 9, 30), 
           datetime.datetime(2017, 9, 7, 12, 30)), 
           (datetime.datetime(2017, 9, 7, 13, 30), 
           datetime.datetime(2017, 9, 7, 14, 0))]

你错过了约会中的括号。试试这个:

#from datetime import datetime, timedelta
import datetime

#notice the additional brackets to keep the 2 slots as two separate lists. So, 930-1230 is one slot, 1330-1400 is an another.

appointments = [(datetime.datetime(2017, 9, 7, 9, 30), 
           datetime.datetime(2017, 9, 7, 12, 30)), 
           (datetime.datetime(2017, 9, 7, 13, 30), 
           datetime.datetime(2017, 9, 7, 14, 0))]
#from datetime import datetime, timedelta
import datetime

#notice the additional brackets to keep the 2 slots as two separate lists. So, 930-1230 is one slot, 1330-1400 is an another.

appointments = [(datetime.datetime(2017, 9, 7, 9, 30), 
           datetime.datetime(2017, 9, 7, 12, 30)), 
           (datetime.datetime(2017, 9, 7, 13, 30), 
           datetime.datetime(2017, 9, 7, 14, 0))]