ValueError:未转换的数据仍然存在:

时间:2016-10-24 16:35:59

标签: python datetime

我有一个包含两列时间值的文本文件,如下所示:

21:28:07.638502 21:28:07.636

是的,一列有额外的数字。我试图只读取所有行,得到微秒的时差......等等。

如果我尝试以下内容,我会收到错误。

import datetime
format="%H:%M:%S.%f"
with open(file) as fh:
    for line in fh.readlines():
        line.strip()
        [a,b]=line.split(' ')
        dta=datetime.datetime.strptime(a,format)
        dtb=datetime.datetime.strptime(b,format)
        diff=dta-dtb
        print(diff.microseconds)

我不确定"未转换的数据"来自。 "遗骸之后什么都没有:"在错误消息中。数据到底是什么?

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/root/.pyenv/versions/3.5.1/lib/python3.5/_strptime.py", line 500, in _strptime_datetime
  tt, fraction = _strptime(data_string, format)
File "/root/.pyenv/versions/3.5.1/lib/python3.5/_strptime.py", line 340, in _strptime
  data_string[found.end():])
ValueError: unconverted data remains: 

1 个答案:

答案 0 :(得分:7)

strip无法正常工作,您必须将其指定为实际删除换行符:

line = line.strip()