>>> x
['00:05:09.252', '00:05:42.244', '00:06:44.546']
如何将这些字符串项目转换为'hh:mm:ss.uuu'时间格式,以便我可以使用此格式进行时间计算?将字符串转换为时间格式
我阅读文档,但一切似乎datetime和不同的时区的角度来解释,而我只想做时间格式计算无书面方式我自己的函数完成这个任务。
>>> x
['00:05:09.252', '00:05:42.244', '00:06:44.546']
如何将这些字符串项目转换为'hh:mm:ss.uuu'时间格式,以便我可以使用此格式进行时间计算?将字符串转换为时间格式
我阅读文档,但一切似乎datetime和不同的时区的角度来解释,而我只想做时间格式计算无书面方式我自己的函数完成这个任务。
给你的数据是严格的格式,以hour:min:sec.usec
(貌似他们没有directives以应对蟒蛇strptime
微秒,所以想你必须自己提供值datetime.time
的构造函数)
import datetime
def timeconverter(timestring):
hour, min, sec = timestring.split(':')
sec, usec = sec.split('.')
time = datetime.time(*[int(x, 10) for x in (hour, min, sec, usec)])
return time
退房strptime时间模块中。
import time
t= time.strptime("00:05:42.244", "%H:%M:%S")
如果您不关心秒的小数部分,请这样做。如果你真的在意,那么由康康使用的approuch是一个更好的解决方案。
'datetime.strptime('00:05:42.244' , “%H:%M:%S%F”)' - >'datetime.datetime(1900,1,1,0,5,42,24,4000)'。要获得'datetime.time'对象,可以使用'.time()'方法。注意:它忽略时区问题。 – jfs 2013-03-17 05:10:37
我以某种方式预计在Python中的时间操作更简单。感谢提供转换功能 – user2136786 2013-03-17 04:11:39
@ user2136786如果没有发现任何微秒(usecs)这将是简单的:d – thkang 2013-03-17 04:18:53
是,和Python不具备这样的格式化器,虽然似乎是微秒。所以,在进行计算之后,如果我想将这些时间对象转换为可读格式,我不能再改变一下你的转换器以微秒或其他方式工作 – user2136786 2013-03-17 04:28:27