【问题标题】:Convert timedelta output into hours,minutes and seconds Python将 timedelta 输出转换为小时、分钟和秒 Python
【发布时间】:2019-11-28 09:36:49
【问题描述】:

我需要将 timdelta 变量转换为小时、分钟和秒,我在 this 的帮助下成功地做到了

但结果并不准确

from datetime import datetime, timedelta
startDateTime = datetime.now()
#Do some work
print(startDateTime)
endDateTime=datetime.now()
print(endDateTime)
diff = (endDateTime - startDateTime)
print('diff with microS',diff)
diff = diff - timedelta(microseconds=diff.microseconds)    
print('diff w/o microS',diff)
diff = '%02d:%02d:%02d' % (diff.days*24 + diff.seconds // 3600, (diff.seconds % 3600) // 60, diff.seconds // 60)
print('Heures de roulage ',diff)

在我的例子中

diff with microS 0 days 00:07:02.710529
diff w/o microS 0 days 00:07:02
Heures de roulage  0:07:07

我不明白为什么它增加了那 5 秒 0 days 00:07:02 变成 0:07:07

【问题讨论】:

    标签: python-3.x timedelta


    【解决方案1】:

    在这行diff = '%02d:%02d:%02d' % (diff.days*24 + diff.seconds // 3600, (diff.seconds % 3600) // 60, diff.seconds // 60) 而是将// 替换为% ==> diff = '%02d:%02d:%02d' % (diff.days*24 + diff.seconds // 3600, (diff.seconds % 3600) // 60, diff.seconds % 60)

    【讨论】:

      猜你喜欢
      • 2011-01-08
      • 2015-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-29
      相关资源
      最近更新 更多