如何在日期时间中向日期对象添加月份?蟒蛇

问题描述 投票:0回答:3

我需要创建一个日期变量来存储当前日期,并且我需要另一个变量来存储截止日期(天+1个月),但我似乎做错了一些事情。

import datetime

day = datetime.date.today()
deadline = datetime.date.today()
deadline.month += 1

print(day)
print(deadline)
python datetime
3个回答
16
投票

文档:https://dateutil.readthedocs.io/en/stable/relativedelta.html

import datetime
from dateutil.relativedelta import relativedelta

day = datetime.date.today()
# day --> datetime.date(2021, 1, 8)


deadline = day + relativedelta(months=1)
# deadline --> datetime.date(2021, 2, 8)

0
投票

您可以尝试导入 python-dateutil 并使用

relativedelta
来实现您想要的。你可以参考这个 回答以获取更多信息

deadline = day + relativedelta(months=1)

0
投票

如果您想获取 ISO 周格式

[YYYY]-W[Int]
:

def set_query_params(self, last_date: date) -> date:
     iso_calendar_date = last_date.isocalendar()
     # ISO week format = [YYYY]-W[Int]. Eg, 2024-W12.
     iso_week = f"{iso_calendar_date.year}-W{0 if iso_calendar_date.week < 10 else ''}{iso_calendar_date.week}"
     self.query_rams = {period=iso_week}
© www.soinside.com 2019 - 2024. All rights reserved.