python中日期的算术运算

时间:2017-01-27 14:53:02

标签: python date datetime

我想知道python中两个日期之间有多少天,我使用类型“date”来存储信息。但是,如果我只减去两个日期,我不会收到整数值,而是某种元组:

from datetime import *

a = date(2016, 9, 26)
b = date(2017, 1, 25)
delta = b - a

print('Interval is', delta, 'days long.')

返回:Interval is 121 days, 0:00:00 days long.

但如果我这样做,我只收到天数。

from datetime import *

a = date(2016, 9, 26)
b = date(2017, 1, 25)

delta = b - a

print('Interval is', delta.days, 'days long.\n')

返回:Interval is 121 long.

对于“date”类的3.6版本对象,

In Python documentation有3个参数:

class datetime.date(year, month, day)

为什么在日期本身操作时仍会返回不必要的时间0:00:00 delta?

1 个答案:

答案 0 :(得分:1)

哦,现在我明白了!减法不返回带有天数的整数值,它返回timedelta类型的对象,在这种特殊情况下,您必须按delta.daysdelta.miliseconds显式访问值。