繁体   English   中英

Python:有没有办法用写为“小时”:“分钟”:“秒”:“毫秒”的值减去日期时间对象

[英]Python: Is there a way to subtract date time objects with the values written as “hours”:“minutes”:“seconds”:“milliseconds”

我正在尝试将字符串转换为日期时间 object 给定小时分钟秒和毫秒,因此我可以找到两个字符串之间的时间差异。 如果有更好的方法可以让我知道,那就太好了。

日期时间 object 的格式如下所示:

但是当我尝试减去两个转换为日期时间对象的字符串时,结果不正确。 例如:

from datetime import datetime

format = '%H:%M:%S:%f'

x = '12:51:11:153'
time1 = datetime.strptime(x, format)


y = '13:51:11:153'
time2 = datetime.strptime(y, format)

difference = time2 - time1

print(difference)

"The print" = 0:00:00

我是否缺少格式的某些内容,或者是否有一种特殊的方法可以相互减去 datetime 对象? 另外,有没有更简单的方法来做到这一点?

我认为您的解决方案是正确的。 我无法重现那个。 这是我的代码和 output 如果我运行它。

from datetime import datetime
import time
format = '%H:%M:%S:%f'
time1 = datetime.strptime("12:51:11:153", format)
time2 = datetime.strptime("13:51:11:153", format)

print((time2-time1).total_seconds())  

--> 3600.0 秒(类型为浮点数)

type(time2-time1) --> <class 'datetime.timedelta'>
time2-time1 --> datetime.timedelta(seconds=3600)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM