python-3.x - 获取日期为 YYYY-MM 减去一个月
问题描述
如果我使用这个:
YYYYMMnow = datetime.today().strftime('%Y-%m')
我得到输出
2020-11
截至今天是 2020 年 11 月
我想要一个给我的公式,YYYY-MM 减去一个月
这将是一个像
2020-10
或在一月份,从 2021-01 开始,它将返回 2020-12
解决方案
逻辑:
- 把天换成 1,那你就不会遇到问 Python “3 月 30 日之前的一个月是多少”这样的问题吗?
- 减去 10 天;结果的天元素无关紧要
- 截断为 YYYY-MM
from datetime import datetime, timedelta
>>> (datetime.today().replace(day=1) - timedelta(days=10)).strftime('%Y-%m')
'2020-10'
>>> (datetime(year=2020, month=3, day=5).replace(day=1) - timedelta(days=10)).strftime('%Y-%m')
'2020-02'