我正在尝试将 str 列表转换为时间戳列表,然后想使用 total_seconds() 创建时间戳的时间增量列表
from datetime import datetime
a = ['091122333','092222222','093333333']
for i in a:
datetime.strptime(str(i),'%H:%M:%S.%f')
print(a)
显示时间数据'091122333'不匹配格式'%H:%M:%S.%f'的错误代码
如果可能,我想制作时间戳 09(%H)11(%M)22(%S)333(%F)。 你能给我上面的建议吗?
非常感谢...
答案 0 :(得分:0)
传递给 strptime
的格式应代表字符串中使用的格式(字符串中没有冒号):
from datetime import datetime
a = ['091122333', '092222222', '093333333']
for i in a:
dt = datetime.strptime(str(i), '%H%M%S%f')
print(dt)
出:
1900-01-01 09:11:22.333000
1900-01-01 09:22:22.222000
1900-01-01 09:33:33.333000
答案 1 :(得分:0)
您必须首先更改表示(您有 :
,它不存在于 a
的字符串列表中)以及您如何管理从日期时间返回的内容。 strptime(您必须在遍历列表时存储该值),如下所示:
from datetime import datetime
a = ['091122333','092222222','093333333']
for t in range(len(a)):
a[t] = datetime.strptime(a[t],'%H%M%S%f')
delta = a[1]-a[0]
print(delta.total_seconds())