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

Bil*_*y K 3 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)
Run Code Online (Sandbox Code Playgroud)

我不确定"未转换的数据"来自何处.错误消息中的"遗留:"之后没有任何内容.数据到底是什么?

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: 
Run Code Online (Sandbox Code Playgroud)

Mos*_*oye 8

strip 不起作用,你必须指定它实际删除新的行字符:

line = line.strip()
Run Code Online (Sandbox Code Playgroud)