我是Python的新手,我一直在努力解决似乎很简单的问题,但是我注意到所有这些代码都在堆积,我迷路了。
我只需要该月的第三个星期四的下一次出现日期,无论是本月还是下个月。
这与可能的重复问题不同,因为我没有测试以确定给定的日期是否是第三个星期四,所以我只是想在运行脚本时吐出下一个出现的第三个星期四。
我期待能够制作这样的东西(或解决更复杂的问题!),但是我真的需要立即使这段代码运行。如果您能帮助我解决难题,并在此过程中给我留下一些有用的意见,我将不胜感激!
非常感谢。
最佳答案
这是你想要的?根据今天的1/19和2019年1月的第三个星期四的1/17输出2019-2-21。基本上将这些其他答案用于详细说明。这是原始dup注释(已删除)-How to calculate next Friday?。只是问是否有任何需要解释。
import datetime
today = datetime.date.today()
next_thursday = today + datetime.timedelta(((3 - today.weekday()) % 7))
while True:
if 15 <= next_thursday.day <= 21:
next_third_thursday = next_thursday
break
else:
next_date = next_thursday + datetime.timedelta(days=1)
next_thursday = next_date + datetime.timedelta(((3 - next_date.weekday()) % 7))
print(next_third_thursday)