gpt4 book ai didi

python - 使用 Calendar.monthdatescalendar() 和劳动节

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:24 25 4
gpt4 key购买 nike

我正在使用日历和monthdatescalendar()

import Calendar

mycal = calendar.Calendar(0)
laborday = mycal.monthdatescalendar(2003, 9)[0][0]

正确返回 09/01/2003

laborday = mycal.monthdatescalendar(2004, 9)[0][0]

返回 08/30/2014,这不是期望的结果

正确获取该月第一天(对于任何月份/年)而不获取上个月最后一天的正确方法是什么,因为您正确获取了第一周?

最佳答案

问题是 monthdatescalendar 返回整周,因此如果需要填充第一周,将包括之前的月份。

要获得正确的日期,您需要检查第一个星期一 datetime 对象的月份,并根据需要选择下一个星期一。

import calendar

def getLaborDay(year):
month = 9
mycal = calendar.Calendar(0)
cal = mycal.monthdatescalendar(year, month)
if cal[0][0].month == month:
return cal[0][0]
else:
return cal[1][0]

print getLaborDay(2003)
print getLaborDay(2004)

Gives:

2003-09-01
2004-09-06

关于python - 使用 Calendar.monthdatescalendar() 和劳动节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24622887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com