Python你可能会用到的时间比较
短信预约 -IT技能 免费直播动态提醒
最近用Python来做时间的比较,整理一下。
场景:数据库保存的是datetime.datetime.now()的str类型的数据,需要把数据库保存的时间跟现在的时间进行比较。
用到的库:datetime.datetime.now() datetime.datetime.strptime() datetime.timedelta()
数据模拟:
>>> from datetime import datetime, timedelta
>>> nowtime = datetime.now() # 现在的时间
>>> nowtime
datetime.datetime(2017, 6, 20, 20, 11, 12, 926763)
>>>
>>> lasthour = datetime(2017, 6, 20, 19, 11, 12, 926763) # 1个小时前的时间
>>> lasthour
datetime.datetime(2017, 6, 20, 19, 11, 12, 926763)
>>> lasthour_str = str(lasthour) # 模拟从数据库取出来的str类型时间数据
>>> lasthour_str
'2017-06-20 19:11:12.926763'
str时间数据转换:
# 将str类型时间数据转换为datetime.datetime类型时间数据
>>> lasthour_new = datetime.strptime(lasthour_str, '%Y-%m-%d %H:%M:%S.%f')
>>> lasthour_new
datetime.datetime(2017, 6, 20, 19, 11, 12, 926763)
时间比较:
# lasthour_new和nowtime的时间差是否大于1个小时
>>> nowtime - lasthour_new > timedelta(hours=1)
False
# lasthour_new和nowtime的时间差是否等于1个小时
>>> nowtime - lasthour_new == timedelta(hours=1)
True
# lasthour_new和nowtime的时间差是否大于60分钟
>>> nowtime - lasthour_new > timedelta(minutes=60)
False
# lasthour_new和nowtime的时间差是否等于60分钟
>>> nowtime - lasthour_new == timedelta(minutes=60)
True
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341