计算每个月的最后一周可以通过以下步骤实现:
datetime
模块的date.today()
函数。calendar
模块的monthrange(year, month)
函数,其中year
和month
分别表示年份和月份。date.weekday()
函数,返回值为0-6,其中0表示周一,6表示周日。以下是一个示例的Python代码实现:
import datetime
import calendar
def calculate_last_week_of_month():
# 获取当前日期
today = datetime.date.today()
# 获取当前月份的总天数
_, last_day = calendar.monthrange(today.year, today.month)
# 计算当前月份的最后一天
last_day_of_month = datetime.date(today.year, today.month, last_day)
# 判断最后一天是否在最后一周
if last_day_of_month.weekday() == 6:
start_date = last_day_of_month - datetime.timedelta(days=6)
end_date = last_day_of_month
else:
start_date = last_day_of_month - datetime.timedelta(days=last_day_of_month.weekday())
end_date = last_day_of_month + datetime.timedelta(days=6 - last_day_of_month.weekday())
return start_date, end_date
# 调用函数计算最后一周的起始日期和结束日期
start_date, end_date = calculate_last_week_of_month()
print("最后一周的起始日期:", start_date)
print("最后一周的结束日期:", end_date)
这段代码会输出最后一周的起始日期和结束日期。你可以根据实际需求进行调整和扩展。
领取专属 10元无门槛券
手把手带您无忧上云