我在python 2.7中减去两个日期,并在几秒钟内得到错误的结果。显然这些日期之间的差异超过24小时,即86400。但我得到44705s,为什么会这样,以及如何解决它?
>>> date1
datetime.datetime(2017, 10, 22, 11, 41, 28)
>>> date2
datetime.datetime(2017, 10, 20, 23, 16, 23)
>>> (date1-date2).seconds
44705
答案 0 :(得分:4)
调用.seconds
只会为您提供timedelta
对象的秒组件,该组件仅考虑秒,分钟和小时(有关更多详细信息,请参阅文档)。如果您想在几秒钟内完成整个timedelta
,请致电total_seconds
。
>>> (date1 - date2).total_seconds()
131105.0
答案 1 :(得分:1)
date1-date2
是datetime.timedelta(1, 44705)
。你只关注秒部分。看看日期部分。