Python:返回该月第三个星期四的下一次出现的日期

标签 python date datetime calendar datetimeoffset

我对 Python 有点陌生,我一直在努力解决看似简单的问题,但我注意到所有这些代码都堆积起来,我只是迷失在酱汁中。

我只需要该月第三个星期四下一次出现的日期,无论是当月还是下个月。

这与可能的重复问题不同,因为我没有测试给定日期是否是第三个星期四,我只是想在脚本运行时吐出下一个出现的第三个星期四.

我期待能够制作这样的东西(或者解决更复杂的问题!),但我现在确实需要让这段代码运行起来。如果您能帮助我解决我的难题,并且也许在此过程中给我留下一些有用的评论,我将非常感激!

非常感谢。

最佳答案

这是您要找的吗?它根据今天为 1/19 和 1 月第三个星期四为 1/17 输出 2019-2-21。基本上使用了这些其他答案来进行详细解释。这是最初的重复评论(已删除)-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)

关于Python:返回该月第三个星期四的下一次出现的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54272741/

相关文章:

javascript - 如何计算日期对象是否更接近一个或另一个日期

javascript - 在JavaScript中将字符串转换为日期

python - 在 Pandas 中,如何将一串日期字符串转换为日期时间对象并将它们放入 DataFrame 中?

c# - 如何在恰好午夜时在 Datagridview 单元格中显示完整的 DateTime 值?

entity-framework - 将 EF CTP5 与 Sql Server Compact Edition 4.0 一起使用时的 EntityFunctions.TruncateTime 替代方案

python - 将 python 添加到atom 时出现问题

python - 使用 pyOpenSSL 签署大文件

python - Colorbar offsetText(科学基础乘数)从colorbar的顶部移动到底部

python - 类型错误 : only integer scalar arrays can be converted to scalar index while converting dataframe "to_datetime"

sql - 奇怪的 Oracle 行为 : TO_DATE and CONCAT in WHERE clause