相关疑难解决方法(0)

Python - 将纪元时间的秒数转换为人类可读时间

最初我制作了这段代码,将日期转换为人类可读时间:

    a = datetime.datetime.strptime(time, "%Y-%m-%d %H:%M:%S.%f")
    b = datetime.datetime.now()
    c = b - a
    days, hours, minutes, seconds = int(c.days), int(c.seconds // 3600), int(c.seconds % 3600 / 60.0), int(c.seconds % 60.0)
    return days, hours, minutes, seconds
    EXAMPLE OUTPUT: 1 days, 4 hours, 24 minutes, 37 seconds
Run Code Online (Sandbox Code Playgroud)

而我正试图使用​​纪元时间,但我不知道如何计算天数等等.

    a = last_epoch #last epoch recorded
    b = time.time() #current epoch time
    c = b - a #returns seconds
    hours = c // 3600 / 24 #the only thing I managed to figure …
Run Code Online (Sandbox Code Playgroud)

python time

12
推荐指数
2
解决办法
3万
查看次数

Python人类可读的日期差异

我给出了这样的日期字符串:

Mon Jun 28 10:51:07 2010
Fri Jun 18 10:18:43 2010
Wed Dec 15 09:18:43 2010
Run Code Online (Sandbox Code Playgroud)

什么是方便的python方式来计算天数的差异?假设时区是相同的.

这些字符串由linux命令返回.

编辑:谢谢,这么多好的答案

python datetime

9
推荐指数
3
解决办法
5392
查看次数

一个更优雅的版本,可以产生人类观看的时间

我正在生成给定秒数的时间量.这是我很快想出来的.它运作良好,但它非常难看.

想不出任何使这更优雅的技巧(没有让它复杂或依赖于这个和那个),但也许这里的人有一些提示.

谢谢!

def humanizeTime(seconds):
  if seconds < 60:
    return "%d seconds" % int(round(seconds))
  else:
    minutes = seconds / 60.0
    if minutes < 60:
      return "%d minutes %d seconds" % divmod(seconds, 60)
    else:
      hours = minutes / 60.0
      if hours < 24:
        return "%d hours %d minutes" % divmod(minutes, 60)
      else:
        days = hours / 24.0
        if days < 7:
          return "%d days" % int(round(days))
        else:
          weeks = days / 7.0
          if weeks < 4:
            return "%d weeks" % int(round(weeks)) …
Run Code Online (Sandbox Code Playgroud)

python time

2
推荐指数
1
解决办法
146
查看次数

标签 统计

python ×3

time ×2

datetime ×1