【问题标题】:how to get the Seconds of the time using python如何使用python获取时间的秒数
【发布时间】:2011-05-19 10:40:59
【问题描述】:

这是我的代码:

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

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

谢谢

【问题讨论】:

    标签: python time


    【解决方案1】:

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

    minute = int(now / 60)
    seconds = int(now % 60)
    

    【讨论】:

    • 这是正确的,但“现在”是一个相当不直观的名称。将其更改为“remaining_secs”或类似的内容。
    • 我们没有其他问题吗?告诉 OP
    • 对不起,我的意思是解决 OP。 :) 但我明白你为什么会觉得被冒犯了。
    • 这个答案也是错误的,因为一分钟不一定有60秒
    • @PaulSmith 好点。我再次编辑它以转换为 int。如果输入是(在本例中为),则模数也可以是十进制值,所以现在我也将其转换为 int。
    【解决方案2】:

    我相信两个时间对象之间的差异会返回一个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
    

    【讨论】:

    • 废话 - time.time() 只返回一个浮点数。 >>> time.time() 1305803305.7057121 >>> type(time.time())
    • @Sentinel 是的,与此同时,我刚刚检查并更新了我的答案。我也赞成你的回答,因为它是正确的。我很想删除我的答案,但我会留下它,以防 zjm1126 想从中复制代码。
    • timedelta.total_seconds() 是 Python 2.7 及更高版本。
    【解决方案3】:

    在 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
    

    我想,这可以解决你的问题。

    【讨论】:

      猜你喜欢
      • 2016-04-17
      • 1970-01-01
      • 2021-09-16
      • 2012-02-12
      • 2014-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多