timedelta 时间差

42.5 timedelta 时间差

timedelta(days=, hours=, minutes=, seconds=) 表示时间间隔。

datetime ± timedelta 得到新 datetime;两个 datetime 相减得 timedelta。

7 天后

# ========================================
# 示例:日期加减
# 说明:timedelta(days=7) 加 7 天
# ========================================
from datetime import datetime, timedelta

now = datetime.now()
future = now + timedelta(days=7)
past = now - timedelta(hours=24)
print('7天后', future.date())
print('24小时前', past)

计算间隔天数

# ========================================
# 示例:两日期相差几天
# ========================================
from datetime import datetime

d1 = datetime(2026, 1, 1)
d2 = datetime(2026, 5, 30)
print('相差', (d2 - d1).days, '天')