对比Excel,怎么用Python获取指定月最后一天的日期

这是对比的日群友的一个需求。他想根据一个给定的用月最日期,获取该给定日期在这个年月的获取后天最后一天的日期,并且要求在Python中怎么做。指定基于此,对比的日我就想到了对比Excel,用月最在Python中完成这个需求。获取后天

Excel完成这个需求
① 在单元格中输入EOMONTH()公式

② 完成填充操作

③ 将时间戳转换为短日期格式
可以看到在excel中输入该公式后,指定默认返回的对比的日是一个时间戳,我们需要将其转换为我我们需要的用月最短日期格式。

Python完成这个需求
在完成这个需求之前,获取后天我们先来讲述几个知识点,指定否则你会看着懵逼。对比的日
1)datetime库中的用月最知识点
import datetime date1 = datetime.date.today() print(date1) year = datetime.date.today().year print(year)` month = datetime.date.today().month print(month)结果如下:

可以看出:上面我们使用today()函数直接获取了当前系统的年月,并且利用year和month属性分别获取了当前系统时间的获取后天年、月。
接下来,香港云服务器我们使用该模块获取指定年、月的指定日期,其中day=1表示获取当前年月的第一天,day=2表示获取当前年月的第二天......依次进行下去。
date1 = datetime.date(year=year, month=month, day=1) print(date1) date2 = datetime.date(year=year, month=month, day=2) print(date2)结果如下:

通过上述演示,应该可以知道怎么完成这个需求了吧?当我们指定了年月,后面只需要传入day=当月的总天数这个参数,得到的不就是该年月的最后一天的日期吗?因此目前的问题就是怎么获取某个月的最后一天,这就是下面需要讲述的monthrange()函数。
2)calendar库中的知识点
对于这个模块,我主要讲述一个monthrange()函数,这个函数是有什么用呢?
monthrange(year, month):返回指定年月,由第一天所在的星期和本月的总天数组成的元组。服务器租用 # 这里的year和month就是上面提到的2020和7 import calendar x, y = calendar.monthrange(year, month) print(x, y) """ 其中:x表示2020/7/1号所在的星期数,其中周一是0,周二是1,周三是2。 y表示的是2020年7月这个月的总天数。 """结果如下:

3)完整代码如下
def func(year=None, month=None): if year: year = int(year) else: year = datetime.date.today().year if month: month = int(month) else: month = datetime.date.today().month # x:表示当月第一天所属的星期 # y:表示当月的总天数 x, y = calendar.monthrange(year, month) # 获取当月的第一天和最后一天 first_day = datetime.date(year=year, month=month, day=1) last_day = datetime.date(year=year, month=month, day=y) return first_day, last_day first_day, last_day = func() print(first_day, last_day) first_day, last_day = func(2020,6) print(first_day, last_day)结果如下:

这个代码其实很好理解:如果year和month为空,就返回的是当前系统时间的最后一天的日期。如果传入指定年月,那么获取的就是指定年月的最后一天的日期。
网站模板相关文章
- 问题复制代码代码如下:原因可选方案:在终端中安装 7Zip复制代码代码如下:sudo apt-get install p7zip-full注意:在Ubuntu中,你会发现有3个7zip包:p7zip,2025-11-05
1、LIMIT 语句分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。2025-11-05
语法糖往往给程序员提供了更实用的编码方式,可以使代码更简洁流畅,语义更自然。本文介绍笔者自己写的PHP语法糖扩展,扩展了一种全新的PHP超全局变量获取方式。说说语法糖首先说说“语法糖”这个词绝非贬义词2025-11-05
本文经AI新媒体量子位公众号ID:QbitAI)授权转载,转载请联系出处。谷歌的Dropout专利,6月25日生效了。有效期15年。所谓Dropout是一种搞深度学习、训练神经网络时,普遍会用到的方法2025-11-05回顾2009年的CPU发展(一览09年CPU市场,探究性能革新的关键技术)
摘要:随着科技的不断进步,计算机处理器CPU)在过去几十年中取得了巨大的进展。而2009年作为计算机技术发展的重要里程碑之一,它见证了CPU领域的技术变革和性能突破。本文将回顾2009...2025-11-05
如果您是Vue开发的新手,您可能已经听过很多关于它的专业术语了,例如:单页面应用程序、异步组件、服务器端呈现等。另外您可能还经常听到和Vue一起提到的工具和库,如Vuex、Webpack、Vue CL2025-11-05

最新评论