Python如何高效获取倒数第四个月的月份及对应年份
方案1:纯标准库数学计算(无额外依赖,通用高效)
通过将年月换算为总月数做偏移计算,不需要多分支判断,扩展性强,要调整倒数月份只需要修改减去的数值即可:
from datetime import datetime current_date = datetime.now() # 换算为总月数后减去3(倒数第四个月即往前推3个月) total_months = current_date.year * 12 + current_date.month - 3 target_year, target_month = divmod(total_months, 12) # 处理余数为0的情况,对应12月 if target_month == 0: target_month = 12 target_year -= 1 print(target_month, target_year)
方案2:第三方库实现(可读性更高)
如果项目已经安装了python-dateutil依赖,可以直接用相对时间偏移,逻辑更直观:
from datetime import datetime from dateutil.relativedelta import relativedelta target_date = datetime.now() - relativedelta(months=3) print(target_date.month, target_date.year)
内容的提问来源于stack exchange,提问作者aristotle11
相关产品推荐
相关产品推荐

