gpt4 book ai didi

python datetime timestrp函数错误

转载 作者:太空宇宙 更新时间:2023-11-04 08:05:02 27 4
gpt4 key购买 nike

我正在尝试从 txt 文件中获取日期时间。在此文件中,时间用 [] 包围。

我知道第一行总是时间戳。但是当我尝试使用 strptime 获取日期时间时,我收到一条错误消息。

我搜索了其他解决方案。但是好像没有找到符合我错误的。

代码:

FileYSI = open(FilenameYSI,'r')
TimeStampYSI = [next(FileYSI)for x in xrange(1)]

print TimeStampYSI[0]
if TimeStampYSI[0][0] == '['
TimeFP = time.strptime(TimeStampYSI[0],'[%y-%m-%d,%H:%M:%S.%f]\n')

错误:

[2015-09-22,08:10:00.600000]


Traceback (most recent call last):
File "C:/Users/brondert/Documents/realtime_data_aquadrone/trunk/src/MergeLogs.py", line 129, in <module>
MergeLogs("test")
File "C:/Users/brondert/Documents/realtime_data_aquadrone/trunk/src/MergeLogs.py", line 92, in MergeLogs
TimeFP = time.strptime(TimeStampYSI[0],'[%y-%m-%d,%H:%M:%S.600000]\n')
File "C:\Python27\lib\_strptime.py", line 467, in _strptime_time
return _strptime(data_string, format)[0]
File "C:\Python27\lib\_strptime.py", line 325, in _strptime
(data_string, format))
ValueError: time data '[2015-09-22,08:10:00.600000]\n' does not match format '[%y-%m-%d,%H:%M:%S.600000]\n'

最佳答案

4 位数年份的格式是 %Y(大写 Y)而不是 %y,您应该使用它,示例 -

TimeFP = time.strptime(TimeStampYSI[0],'[%Y-%m-%d,%H:%M:%S.%f]\n')

演示 -

>>> import time
>>> time.strptime('[2015-09-22,08:10:00.600000]\n','[%Y-%m-%d,%H:%M:%S.%f]\n')
time.struct_time(tm_year=2015, tm_mon=9, tm_mday=22, tm_hour=8, tm_min=10, tm_sec=0, tm_wday=1, tm_yday=265, tm_isdst=-1)

%y(小 y)格式用于 2 位数年份。

另一件事,你目前正在使用 time 模块,你会得到一个 struct_time 作为 strptime 的结果,但是如果你想要 datetime ,你应该使用 datetime 模块。示例 -

import datetime
datetime.datetime.strptime(TimeStampYSI[0],'[%Y-%m-%d,%H:%M:%S.%f]\n')

关于python datetime timestrp函数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32715959/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com