python中两个给定时间(毫秒)之间的差异

2024-05-17 06:32:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两次,格式如下。 我想找出毫秒的时差。 这只提供秒的准确度。 如何让它工作几毫秒? 谢谢。python新手。

import time
t1 = "2013-09-13 15:43:35,893"
t2 = "2013-09-13 15:43:45,147"
TIME_FORMAT2 = "%Y-%m-%d %H:%M:%S,%f"
t11 = time.mktime(time.strptime(t1, TIME_FORMAT2))
t12 = time.mktime(time.strptime(t2, TIME_FORMAT2))
print t11-t12

Tags: importtime格式t1print时差新手t2
2条回答

如果要在同一对象中使用毫秒和日期,请使用datetime对象。不幸的是,没有您给定格式的日期/时间解析器。不过,您可以使用一个简单的正则表达式:

import time, datetime, re

dt_pat = re.compile(r"(\d+)\-(\d+)-(\d+)\s+(\d+):(\d+):(\d+),(\d+)")
def mstime( tstr ):
    m = dt_pat.match( tstr )
    if m==None: return m
    v = [int(s) for s in m.groups()]
    return datetime.datetime(*v)


t1 = "2013-09-13 15:43:35,893"
t2 = "2013-09-13 15:43:45,147"
dt1 = mstime( t1 )
dt2 = mstime( t2 )
diff = dt2-dt1
print diff.total_seconds()
>>> from datetime import datetime
>>> datetime.strptime(t1, TIME_FORMAT2) - datetime.strptime(t2, TIME_FORMAT2)
datetime.timedelta(-1, 86390, 746000)
>>> _.total_seconds()
-9.254

相关问题 更多 >