python datetime.timedelta 无法加小时

1 投票
1 回答
670 浏览
提问于 2025-04-18 16:02

看完这个描述,我有点困惑,为什么这个

import datetime
d = datetime.date.today()
print datetime.timedelta(hours = 9)
print d
d += datetime.timedelta(hours = 9)
print datetime.datetime.strftime(d, '%m/%d/%Y %H:%M:%S')

会打印出

9:00:00
2014-08-05
08/05/2014 00:00:00

我就是看不出我哪里出错了。我漏掉了什么呢?

1 个回答

5

d 是一个 datetime.date 类型的对象,而不是 datetime.datetime 类型的对象,所以如果你加上一个小于24小时的 timedelta,是没有任何效果的。你需要把

d = datetime.date.today()

改成

d = datetime.datetime.today()

撰写回答