如何获取上个月的日期范围?

2024-06-25 23:21:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Python获取上个月的日期范围。例如,今天是2021年1月4日——我正在寻找检索“2020-12-01”和“2020-12-31”的方法

我从以下几点开始:

today = datetime.date.today()
first = today.replace(day=1)
lastMonth = first - datetime.timedelta(days=1)

这给了我上个月的数据,我可以这样格式化:

beginningOfMonth = lastMonth.strftime("%Y-%m-01")

但是,我尝试使用calendar模块确定月底/月内天数的尝试失败。有没有更简单的方法?最好没有太多的包装部门

先谢谢你


Tags: 模块数据方法todaydatetimedatedayscalendar
1条回答
网友
1楼 · 发布于 2024-06-25 23:21:06

使用calendar.monthrange

from calendar import monthrange
from datetime import datetime

today = datetime.today()

month = today.month
year = today.year

year = year if today.month != 1 else year - 1 # In case you switch year (Jan -> Dec)

last_month_day = monthrange(year, month)[1] # Number of days of the last month.

有了它,您可以重新格式化字符串,因为每个月从1开始,到last_month_day结束

相关问题 更多 >