You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何比较两个日期并计算二者之间的间隔天数

Python计算两个日期间隔天数的实现方法

你现有代码的问题是将date.today()提前格式化为了字符串,字符串无法直接做日期差值计算,需要先把两个日期统一转换为date类型对象再做运算。

实现代码

from datetime import date, datetime

# 解析到期日字符串为date对象,匹配日/月/年格式
expiry_date = details['expires']
expiry_date_obj = datetime.strptime(expiry_date, "%d/%m/%Y").date()

# 直接获取当前日期对象,不要提前转成字符串
today_obj = date.today()

# 计算间隔天数,加abs()保证返回正数间隔,不需要可移除
no_of_days = abs((expiry_date_obj - today_obj).days)

效果验证

用你给出的示例测试:

  • 到期日:28/11/2021
  • 当前日:29/11/2021
    计算得到的no_of_days值为1,和预期输出一致。

注意事项

  • 若需要判断是否到期,可去掉abs():返回正数代表距离到期还有的天数,返回负数代表已经过期的天数。
  • 若details['expires']返回的日期格式不是日/月/年,需要对应调整strptime方法的第二个格式参数。

内容的提问来源于stack exchange,提问作者Abin M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:06:07