如何使用python获取时间的秒数

时间:2011-05-19 10:40:59

标签: python time

这是我的代码:

last_time = get_last_time()
now = time.time() - last_time
minute = 
seconds = 
print 'Next time you add blood is '+minute+':'+seconds

因为每5分钟恢复血液所以只需要分秒和次数

感谢

3 个答案:

答案 0 :(得分:7)

这是算术的基本时间......如果你知道一分钟有60秒,那么你可以 找到了你自己:

minute = now / 60
seconds = now % 60

(自2011年5月19日以来,这个被接受的答案是错误的,因为标志被切换,直到17年1月10日固定)

答案 1 :(得分:3)

我相信两个时间对象之间的区别会返回一个timedelta对象。该对象具有.total_seconds()方法。您需要自己将这些因素分解为几分钟+秒:

minutes = total_secs % 60
seconds = total_secs - (minutes * 60)

当您不知道如何处理Python中的值时,您始终可以在交互式Python会话中尝试它。使用dir(obj)查看所有对象的属性和方法,help(obj)以查看其文档。

更新:我刚检查过,time.time()没有返回time个对象,而是一个表示自Epoch以来秒数的浮点数。我所说的仍然适用,但你以不同的方式得到total_secs的值:

total_secs = round(time.time() - last_time)

简而言之:

last_time = get_last_time()
time_diff = round(time.time() - last_time)
minute = time_diff / 60
seconds = time_diff % 60  # Same as time_diff - (minutes * 60)
print 'Next time you add blood is '+minute+':'+seconds

答案 2 :(得分:1)

在Python 3中,

>>import time
>>time.localtime()
time.struct_time(tm_year=2018, tm_mon=7, tm_mday=16, tm_hour=1, tm_min=51, tm_sec=39, tm_wday=0, tm_yday=197, tm_isdst=0)

您可以像这样刮擦分钟和秒钟,

>>time.localtime().tm_min
51
>>time.localtime().tm_sec
39

我认为,这可以解决您的问题。