python 相对时间转换

编程入门 行业动态 更新时间:2024-10-25 16:21:23
本文介绍了python 相对时间转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

问 题

a = "3月10天前" b = "10天3小时前" c = "7小时5分钟前" 根据当前系统时间转换为 0000-00-00 00:00 的格式,没有小时/分钟的分别算作00

解决方案

def gtime(atime): match = re.match(r'(\d+)(\D+)(\d+)(\D+)',atime, re.M|re.I) match2 = re.match(r'(\d+)(\D+)',atime, re.M|re.I) days = 0 secs = 0 if match: d1 = int(match.group(1)) d2 = int(match.group(3)) t1 = match.group(2) t2 = match.group(4) if t1 == u"月": days += d1 * 30 elif t1 == u"天": days += d1 elif t1 == u"小时": secs += d1 * 3600 elif t1 == u"分": secs += d1 * 60 if t2 == u"天": days += d2 elif t2 == u"小时": secs += d2 * 3600 elif t2 == u"分钟": secs += d2 * 60 elif t2 == u"秒": secs += d2 elif match2: d1 = int(match2.group(1)) t1 = match2.group(2) if t1 == u"月": days += d1 * 30 elif t1 == u"天": days += d1 elif t1 == u"小时": secs += d1 * 3600 elif t1 == u"分": secs += d1 * 60 elif t1 == u"秒": secs += d1 time = now + datetime.timedelta(days=-days, seconds=-secs) return time

时间越远,准确度越低,反正也只是粗略时间,月取30天就行了

换算没有PHP strtotime()那么方便,可以直接用年、月等任何时间单位进行计算,不知道python有没有提供类似功能的模块

更多推荐

python 相对时间转换

本文发布于:2023-10-24 09:46:01,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1523612.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:时间   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!