【问题标题】:How get hours:minutes如何获得小时:分钟
【发布时间】:2010-12-19 14:07:43
【问题描述】:

我这里有一个脚本(不是我自己的),它计算我的卫星接收器中电影的长度。它以分:秒

为单位显示长度

我想在 小时:分钟

我必须做出哪些改变?

这是有关脚本的和平:

if len > 0:
    len = "%d:%02d" % (len / 60, len % 60)
else:
    len = ""

res = [ None ]

我已经通过除以 3600 而不是 60 得到小时数,但无法得到分钟数...

提前致谢

彼得

【问题讨论】:

  • 嗨,彼得。您能否添加一个标签,说明您使用的是什么语言,这样我们就不会在答案中出错?谢谢!
  • 一小时有60分钟。因此,如果您知道有多少分钟,只需将分钟除以 60,您就有多少小时。

标签: python time formatting


【解决方案1】:
hours = secs / 3600
minutes = secs / 60 - hours * 60

len = "%d:%02d" % (hours, minutes)

或者,对于最新版本的 Python:

hours = secs // 3600
minutes = secs // 60 - hours * 60

len = "%d:%02d" % (hours, minutes)

【讨论】:

  • 是的,成功了!一个完整的 Python-noob 的这个小问题得到了解决。谢谢大家!彼得
【解决方案2】:

那么电影中的秒数是多少?这是一个坏名字。 Python 已经使用 len 这个词来表示别的东西。更改。

def display_movie_length(seconds):
    # the // ensures you are using integer division
    # You can also use / in python 2.x
    hours = seconds // 3600   

    # You need to understand how the modulo operator works
    rest_of_seconds = seconds % 3600  

    # I'm sure you can figure out what to do with all those leftover seconds
    minutes = minutes_from_seconds(rest_of_seconds)

    return "%d:%02d" % (hours, minutes)

您需要做的就是弄清楚minutes\_from\_seconds() 应该是什么样子。如果您仍然感到困惑,请对模运算符进行一些研究。

【讨论】:

    【解决方案3】:

    这里有一个很好的答案https://stackoverflow.com/a/20291909/202168(这个问题的后续副本)

    但是,如果您正在处理日期时间字符串中的时区偏移,那么您还需要处理负小时数,在这种情况下,Martijn 答案中的零填充不起作用

    例如,它将返回 -4:00 而不是 -04:00

    为了解决这个问题,代码会稍微长一些,如​​下所示:

    offset_h, offset_m = divmod(offset_minutes, 60)
    sign = '-' if offset_h < 0 else '+'
    offset_str = '{}{:02d}{:02d}'.format(sign, abs(offset_h), offset_m)
    

    【讨论】:

      【解决方案4】:

      你可以使用timedelta

      from datetime import timedelta
      str(timedelta(minutes=100))[:-3]
      # "1:40"
      

      【讨论】:

      • 不错。如果您不想显示秒数,我会添加:str(timedelta(minutes=100))[:-3]
      猜你喜欢
      • 1970-01-01
      • 2013-11-24
      • 2021-01-23
      • 2017-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多