python - 检查当前时间是否在周末 Python
问题描述
我正在尝试编写类似以下代码的代码。我希望我的代码在星期五晚上 11 点和星期一凌晨 1 点之前什么都不做,这应该是变量 bgn 和 end 但我没有设法在这两个变量中编写日期和小时。
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() 方法,该方法为您提供一周中的天数。
基本上(如果我理解得很好)你不想在这三种不同的情况下做某事:
- 如果当天是周六或周日(表示在第 5 天和第 6 天)
- 如果当天是星期五(第 4 天),但时间在 23 小时以上
- 如果当天是星期一(第 0 天)但小时在 1 小时之前
所以你可以做这样的事情:
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)
我很确定你可以做一些更短更聪明的事情,但它可以解决问题。
推荐阅读
- javascript - 更改对象的 __proto__ 的值是否被认为是不好的做法?
- php - Gmail API CC 很多人,但在底部添加了不同的像素跟踪器
- python - 如何使用来自 ftplib 的 FTP 在 python 中获取 ftp 文件 [以 epoc 毫秒格式] 的最后修改时间?
- c# - 收到错误“不支持指定的方法”。在 c# 中的 bitmap.save 上。验证码 5
- swift - 如何存储多个 Swift 文件的列表并独立执行它们
- wordpress - WordPress:无法通过子主题覆盖父主题文件
- html - dompdf - 为什么 CSS 不显示打印?
- javascript - 取消屏蔽日期时间 - 输入掩码
- javascript - 对网页进行实时更新时跟踪更改的方法
- ms-access - 根据 InfoPath 中的下拉菜单显示有关项目的信息