Heim  >  Fragen und Antworten  >  Hauptteil

python - Warum verwendet die Formatierung mit time.strftime den Standardwert?

a = time.time()

time.sleep(3)

b = time.time()

time_sumption = time.strftime("%H:%M:%S", time.localtime(b - a))
print(time_sumption)

Verwenden Sie den obigen Code, um time.strftime auszuführen. Nach der Formatierung der Uhrzeit gibt es immer einen Standardwert für die Stunde

PHP中文网PHP中文网2711 Tage vor574

Antworte allen(2)Ich werde antworten

  • 迷茫

    迷茫2017-05-18 10:52:41

    因为时区的问题,不应该用 time,应该用 datetime.timedelta 来计算
    参考下面代码

    import time
    import datetime
    
    a = time.time()
    
    time.sleep(3)
    
    b = time.time()
    print datetime.timedelta(seconds=(b -a ))  # <-- 推荐
    time_consuming = time.strftime("%H:%M:%S", time.gmtime(b - a))  # <-- 不推荐
    print(time_consuming)

    输出如下:

    0:00:03.004802
    00:00:03

    Antwort
    0
  • 阿神

    阿神2017-05-18 10:52:41

    8 小时是时区转换导致的:北京是东八区,时间要往前加 8 小时。

    Antwort
    0
  • StornierenAntwort