Skip to main content
 首页 » 编程设计

python之将字符串转换为 datetime.time,错误

2025年05月04日19luoye11

我正在获取字符串格式的时间数据,例如“HH:MM”,例如“13:33”将是 13 小时 33 分钟。

所以,我使用这段代码来获取时间对象并且效果很好

datetime.datetime.strptime('13:33', '%H:%M').time() 

但是,我现在遇到了新问题。新字符串开始代表超过 24 小时和 datetime.datetime.strptime('25:33', '%H:%M').time() 只会失败。你有什么建议?

请您参考如下方法:

datetime.time 对象代表一个(本地)一天中的时间,独立于任何特定的一天。

你不应该用它来表示耗时,就像你看起来那样。

更合适的可能是 datetime.timedelta :

A timedelta object represents a duration, the difference between two dates or times.

class datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])

All arguments are optional and default to 0. Arguments may be ints, longs, or floats, and may be positive or negative.

一个例子:

>>> from datetime import timedelta 
>>> d = timedelta(hours=25,minutes=10) 
>>> d 
datetime.timedelta(1, 4200) #Days, seconds