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

Python 3日期差值计算:如何仅保留天数去除时间部分?

解决Python计算日期差仅输出纯天数的问题

嗨,这个问题很好解决~你当前代码里Now - StartDate得到的是一个timedelta对象,它包含了完整的时间差信息(天数+时分秒),而我们只需要提取其中的days属性就能得到纯数字的天数啦。

修改后的代码

直接在计算结果后面加上.days即可:

from datetime import datetime
Now = datetime.now()
StartDate = datetime.strptime(str(Now.year) +'-01-01', '%Y-%m-%d')
NumberOfDays = (Now - StartDate).days  # 关键:访问timedelta的days属性
print(NumberOfDays)

运行这段代码就会直接输出类似78这样的纯整数天数,完全符合你的需求。

额外小提示:更严谨的日期差计算

如果你想完全忽略当天的时间部分(比如不管现在是几点,都只按完整日期计算差),可以把两个时间都转换成date对象再做减法,结果是一样的,但逻辑上更聚焦于日期本身:

from datetime import datetime
now_date = datetime.now().date()
start_date = datetime.strptime(f"{now_date.year}-01-01", "%Y-%m-%d").date()
day_count = (now_date - start_date).days
print(day_count)

这里用了f-string来拼接年份字符串,比字符串相加更简洁哦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:00:11