检查当前时间是否在周末 Python



我正在尝试编写类似于以下代码的代码。 我希望我的代码在星期五晚上 11 点和星期一凌晨 1 点之前什么都不做,这应该是变量 bgn 和结束,但我无法用这两个变量编写日期和时间。

import datetime
Now = datetime.datetime.now()      
bgn = 'Should be Friday 11 PM'
end = 'Should be Monday 1 AM'
if Now>bgn and Now<end:
pass
elif:
...    

你应该看看datetime weekday((方法,它给你一周中的一天的数字。

基本上(如果我理解得很好(你不想在这三种不同的情况下做某事:

  1. 如果这一天是星期六或星期日(这意味着在第 5 天和第 6 天(
  2. 如果当天是星期五(第 4 天(,但小时超过 23 小时
  3. 如果当天是星期一(第 0 天(,但小时在 1h 之前

所以你可以做这样的事情:

import datetime
now = datetime.datetime.now()
if now.weekday() in [5, 6] or (now.weekday() == 4 and now.hour >= 23) or (now.weekday() == 0 and now.hour <= 1):
pass
else:
(do stuff)

我很确定你可以做一些更短、更聪明的事情,但它可以解决问题。

最新更新