我是Python的新手,我一直在努力解决似乎很简单的问题,但是我注意到所有这些代码都在堆积,我迷路了。
我只需要该月的第三个星期四的下一次出现日期,无论是本月还是下个月。
这与可能的重复问题不同,因为我没有测试以确定给定的日期是否是第三个星期四,我只是想在运行脚本时吐出下一个出现的第三个星期四
我期待能够制作这样的东西(或解决更复杂的问题!),但是我真的需要立即使这段代码运行。如果您能帮助我解决难题,并在此过程中给我留下一些有用的意见,我将不胜感激!
非常感谢您。
答案 0 :(得分:2)
这是您要找的东西吗?根据今天的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)
答案 1 :(得分:0)
使用
import pandas as pd
current_date = pd.Timestamp('Jan 20, 2019')
while True:
if 15 <= current_date.day <= 21 and current_date.day_name() == 'Thursday':
break
current_date +=pd.DateOffset(1)
print(current_date)
#2019-02-21 00:00:00