python datetime.timedelta 一坑

葫芦的运维日志

下一篇 搜索 上一篇

2019/03/19 14:02


datetime.timedelta

内部只存储days,seconds,microseconds。

今天使用时 用两个datetime相减,结果发现:

>>> (datetime.strptime('2019-03-19 11:35:44', '%Y-%m-%d %H:%M:%S') - datetime.strptime('2019-03-16 11:35:44', '%Y-%m-%d %H:%M:%S')).seconds
0

竟然是0。。。  按逻辑应该返回的是两个时间之间的差值,结果返回的是 抛去天后的时间差值。

正确使用:

应该吧days 换算成秒后再加上 seconds才能得到两个日期时间的差值。

>>> timedelta=(datetime.strptime('2019-03-19 11:35:44', '%Y-%m-%d %H:%M:%S') - datetime.strptime('2019-03-16 11:35:44', '%Y-%m-%d %H:%M:%S')).seconds
>>> timedelta+= (datetime.strptime('2019-03-19 11:35:44', '%Y-%m-%d %H:%M:%S') - datetime.strptime('2019-03-16 11:35:44', '%Y-%m-%d %H:%M:%S')).days*24*60*60
>>> timedelta
259200

 

葫芦的运维日志

上一篇 搜索 下一篇
© 冰糖葫芦甜(bthlt.com) 2019 王梓 赞助联系方式 陕ICP备17005322号