前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Python你可能会用到的时间比较

Python你可能会用到的时间比较

作者头像
py3study
发布2020-01-08 14:16:16
发布2020-01-08 14:16:16
2.1K00
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

    最近用Python来做时间的比较,整理一下。

    场景:数据库保存的是datetime.datetime.now()的str类型的数据,需要把数据库保存的时间跟现在的时间进行比较。

    用到的库:datetime.datetime.now()    datetime.datetime.strptime()    datetime.timedelta()

数据模拟:

代码语言:javascript
代码运行次数:0
运行
复制
>>> 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时间数据转换:

代码语言:javascript
代码运行次数:0
运行
复制
# 将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)

时间比较:

代码语言:javascript
代码运行次数:0
运行
复制
# 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
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档