Python 计算两个日期之间天数
有的时候要统计两个日期之间的相距天数,可能有很多种方法,但使用 datetime 模块的 datetime 方法无疑是里面比较简单的,具体代码如下:
>>> import datetime
>>> d1 = datetime.datetime(2018,10,31) # 第一个日期
>>> d2 = datetime.datetime(2019,2,2) # 第二个日期
>>> interval = d2 - d1 # 两日期差距
>>> interval.days # 具体的天数
94
>>> interval.seconds # 具体的秒数
0
>>>
从上面来看,还是相当简单。具体的 days 和 seconds 就是具体的差距的天数和额外的秒数。里面常用的方法有:
>>> filter(lambda x: not x.startswith("_"), dir(interval))
['days', 'max', 'microseconds', 'min', 'resolution', 'seconds', 'total_seconds']
>>>
如果是两个日期还是带时,分,秒的话,同样可以算出两者的相距天数及秒数
>>> import datetime
>>> d1 = datetime.datetime(2018,10,31,10,30,0)
>>> d2 = datetime.datetime(2018,11,1,10,40,30)
>>> interval = d2 - d1
>>> interval # 第一项是天数,相距1天
datetime.timedelta(1, 630)
>>> interval.days # 具体天数
1
>>> interval.seconds # 额外秒数
630
>>> interval.total_seconds() # 相差总秒数
87030.0
>>>
隐约记得做流程的时候遇到过类似的需求。。