【发布时间】:2020-02-24 21:59:18
【问题描述】:
我想知道如何在 Python 中检查当天是否是该月的第一个工作日,但在网上找不到任何解决方案。所以我想我发布我的,以防万一有人也需要解决这个问题。
【问题讨论】:
我想知道如何在 Python 中检查当天是否是该月的第一个工作日,但在网上找不到任何解决方案。所以我想我发布我的,以防万一有人也需要解决这个问题。
【问题讨论】:
当你第一次说weekday 时,你假设Monday 对吗?
这背后的逻辑应该是:
Monday 而是 8,则意味着第一个 Monday 是第一个获取这个的函数
def is_first_weekday_of_month():
weekday = datetime.today().weekday()
day = datetime.today().day
return weekday == 0 and day in (1, 2, 3, 4, 5, 6, 7)
【讨论】:
import datetime
weekday = datetime.datetime.today().weekday()
day = datetime.datetime.today().day
date_str = datetime.datetime.today().strftime("%A, %d-%m-%Y")
if (weekday == 0 and day in (1, 2, 3)) or (weekday in (1, 2, 3, 4) and day == 1):
print("Today {0} is the first weekday of the month.".format(date_str))
else:
print("Today {0} is not the first weekday of the month.".format(date_str))
datetime.datetime.today().weekday() 以整数形式返回工作日,其中 0 = 星期一,1 = 星期二等。
datetime.datetime.today().day 以整数形式返回月份中的某天
每月的第一个星期一可以是每月的第 1、2 或 3 号。必须检查所有其他工作日是否在该月的 1 日。如果他们不是在每月的第一天,他们就不是当月的第一个工作日。
【讨论】: