Python 时间差异
我有两个时间对象。
举个例子
time.struct_time(tm_year=2010, tm_mon=9, tm_mday=24, tm_hour=19, tm_min=13, tm_sec=37, tm_wday=4, tm_yday=267, tm_isdst=-1)
time.struct_time(tm_year=2010, tm_mon=9, tm_mday=25, tm_hour=13, tm_min=7, tm_sec=25, tm_wday=5, tm_yday=268, tm_isdst=-1)
我想知道这两个时间之间的差距。我只需要分钟和秒,还有这两个时间的持续时间。
4 个回答
3
你可以使用 time.mktime(t)
这个函数,给它一个叫做 "t" 的时间结构体对象,这样就能把它转换成一个表示“自1970年1月1日以来的秒数”的浮点数。然后,你可以把两个这样的秒数相减,得到它们之间的秒数差,再除以60,就能得到它们之间的分钟差。
17
>>> t1 = time.mktime(time.strptime("10 Oct 10", "%d %b %y"))
>>> t2 = time.mktime(time.strptime("15 Oct 10", "%d %b %y"))
>>> print(datetime.timedelta(seconds=t2-t1))
5 days, 0:00:00
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。
28
Time
实例不支持直接相减。解决这个问题的一种方法是把时间转换成自1970年1月1日以来的秒数,然后再计算差值,可以使用:
>>> t1 = time.localtime()
>>> t1
time.struct_time(tm_year=2010, tm_mon=10, tm_mday=13, tm_hour=10, tm_min=12, tm_sec=27, tm_wday=2, tm_yday=286, tm_isdst=0)
>>> t2 = time.gmtime()
>>> t2
time.struct_time(tm_year=2010, tm_mon=10, tm_mday=13, tm_hour=4, tm_min=42, tm_sec=37, tm_wday=2, tm_yday=286, tm_isdst=0)
>>> (time.mktime(t1) - time.mktime(t2)) / 60
329.83333333333331