在python中获取每个月的最后一个星期五

2024-01-12

我想要接下来三个月的每个月的最后一个星期五。

Friday_date = datetime.date.today()

    while Friday_date.weekday() != 4:
        Friday_date += datetime.timedelta(1)

这给了我最近的星期五。我想确保这是本月的最后一个星期五,这样我就可以添加 28 天以获得下星期五。


最简单的方法是使用模块dateutil https://pypi.org/project/python-dateutil/:

>>> from dateutil.relativedelta import FR, relativedelta
>>> datetime.date.today()+relativedelta(day=31, weekday=FR(-1))
datetime.date(2021, 6, 25)

不要以为只需添加 28 天即可获得后续月份的最后一个星期五。它并不总是有效。将 2024 年 2 月最后一个星期五加上 28 天,得出:

>>> datetime.date(2024,2,1)+relativedelta(day=31, weekday=FR(-1), days=28)
datetime.date(2024, 3, 22)

但该月的最后一个星期五是 3 月 29 日。让dateutil为您正确执行此操作:

>>> datetime.date(2024,2,1)+relativedelta(day=31, weekday=FR(-1), months=1)
datetime.date(2024, 3, 29)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在python中获取每个月的最后一个星期五 的相关文章

随机推荐

  • 在 SciPy 中,什么是“线性”插值?

    我找不到解释在文档中 http docs scipy org doc scipy reference generated scipy interpolate interp1d html scipy interpolate interp1d或
  • 如何在启用双因素的情况下将包上传到 PyPi?

    我想将包上传到 Pypi 因此我创建了一个帐户并尝试按照手册进行操作 帐户 看起来我无法从中创建项目pypi org直接地 我安装了twine我做到了 python3 m twine上传dist 这次我出现了以下错误 HTTPError 4
  • HttpHeaders.TryAddWithoutValidation 的目的是什么?

    在System Net Http Headers命名空间中 有什么区别HttpHeaders TryAddWithoutValidation http msdn microsoft com en us library hh875107 as
  • 使用最后一个非空列值动态填充单元格

    如何获取要填充下一个空单元格的最后一个值 直到下一个值 如下所示链接到工作表 https docs google com spreadsheets d 1yRX0sfIK3geu0bY1L1vXBSDAV7xIfmQHtPA4 ZuH9GY
  • 如何根据时区将时刻转换为另一个时刻

    我在 JS 方面真的很糟糕 而且我在 moment js 上苦苦挣扎 我的愿望是 从 div UTC 获取日期并根据用户的时区转换该日期 因此 如果 UTC 日期是 30 03 2017 6 34 22 AM 纽约有人看到 30 03 20
  • 与 Jedis 客户端的事务发生 Redis 异常

    为了避免在我的 Redis 通道中出现重复 我通过在 Redis 集中保留索引来检查消息是否已经存在 以下是我的实现 然而 它给出了一个例外 redis clients jedis exceptions JedisDataException
  • CUDA 目标的 Numba 和 guvectorize:代码运行速度比预期慢

    值得注意的细节 大型数据集 1000 万 x 5 200 x 1000 万 x 5 主要是 Numpy 每次跑步后需要更长的时间 使用Spyder3 Windows 10 首先是尝试将 guvectorize 与以下函数一起使用 我传入一堆
  • spring中动态更新@value注解的字段

    我正在尝试动态更新 value我的应用程序中的注释字段 首先 这个应用程序有一个自定义属性源 源是Map
  • 为什么像素是浮动的?

    Canvas类的所有方法都使用float类型的坐标 但为什么 据我所知 这个坐标意味着显示上指向的像素数 像素可以分离吗 某些设备支持亚像素精度 在标准 LCD 屏幕上 一个像素实际上是三个子像素 一个红色 一个绿色 一个蓝色 红绿蓝 子像
  • WPF拖动距离阈值

    我有一个带有两个 WPF 树视图的程序 允许在两者之间拖放 问题是 打开 关闭树视图上的项目可能很烦人 因为在按住鼠标左键的同时将鼠标移动一个像素会触发拖 放功能 有没有某种方法可以指定鼠标在被视为拖放之前应移动多远 有一个系统参数可以实现
  • 将 Spring 配置划分到多个项目

    我们有很多项目使用相同的代码库 后端代码 只是前端往往有所不同 我们认为最好的方法是将后端和前端分成不同的项目 Engine and 项目名 现在这些是 Spring 项目 因此 如果我们也划分 Spring 配置 这似乎才合乎逻辑 数据库
  • 当 Ionic 电子商务应用程序中购物车中的产品数量增加时,总价格不会更新

    我正在研究离子电子商务应用程序并使用 Laravel 中的 API 我已将产品添加到购物车中 但是当我增加购物车中的产品数量时 产品价格增加 但总价格没有更新 并且从购物车中删除产品时 也没有更新价格 这是我的购物车 html
  • Azure DevOps Server 2019 保留策略不再有效

    上周 我们已在 ADS 2019 1 服务器上从 TFVC 迁移到 Git 在我们的验证管道中 我们有积极的保留政策 它设置为保留 2 天 使用分支过滤器 进行 10 个良好构建 并清除所有复选框 ADS 将其写为 refs heads 我
  • 在 Python 2.6 上安装 geopandas

    这是我之前的问题的延续Python 中的地理空间分析 https stackoverflow com questions 33427170 geospatial analytics in python 我开始了一个新问题 以使这两个问题在逻
  • 折线不在道路上:它从一个点直接延伸到另一个点

    我的地图包含多个点来点击用户经过的位置 但是折线不显示在道路上 但显示从一个标记到另一个标记的直线 https i stack imgur com 3RWlU jpg 我希望我的折线穿过马路 当道路转弯时 它也应该转弯 这是我的相关代码 d
  • SVN 挂钩不工作

    我有一个分支和主干的服务器存储库 分支是所有团队成员的存储库 我正在尝试使用svn hooks仅在我的分支下的仓库中 但它似乎工作得不好 以下是我尝试采取的步骤 检查过了my repo从远程服务器的branch my repo 自本地回购以
  • 如何使用 CMIS 在 Alfresco 中进行批量更新

    是否可以在露天使用 CMIS 进行批量更新 我有不同的文档类型 每个文档类型在露天存储库中都有多个文档 现在我的要求是 如果我要更新任何文档的任何单个属性 那么它应该反映相同类型的所有文档 我可以使用 CMIS 执行此操作吗 如果是 请提供
  • Redux - 一个与多个减速器

    我来自 Elm 社区 在 Elm 中 每个应用程序都有自己的视图 模型和状态 并且基本上采用与 redux 非常相似的方法来解决问题 不管怎样 我发现自己在多个减速器的想法中挣扎 在 Elm 中 我习惯为所有操作 消息 创建一个单独的文件
  • 如何从 angularjs ng-route 中删除哈希#

    我试图使用 locationProvider 从 Angular js 中的 url 路由中删除主题标签 但它给了我错误 app js var eclassApp angular module eclassApp ngRoute eclas
  • 在python中获取每个月的最后一个星期五

    我想要接下来三个月的每个月的最后一个星期五 Friday date datetime date today while Friday date weekday 4 Friday date datetime timedelta 1 这给了我最