我试图用Python语言编写一个程序,将:从文件读取时间戳和转换到MS
- 采取.csv文件输入
- 读取时间戳在第二排
- 打印为MS
当我写的时间戳在一个变量的代码工作,但是当我尝试使用一个文件作为输入,没有任何反应每个时间戳之间的时间差。该程序运行,但没有打印到控制台。
这是代码的外观:
import csv
import datetime
from Tkinter import Tk
from tkFileDialog import askopenfilename
Tk().withdraw()
toopen = askopenfilename(filetypes=[("Text file","*.txt")])
with open(toopen, 'rb') as f:
reader = csv.reader(f, delimiter='\t')
for row in reader:
code = row[0]
times = row[1].split()
times = [datetime.datetime.strptime(x, "%H:%M:%S.%f") for x in times]
for i in range(len(times) - 1):
delta = times[i + 1] - times[i]
print ((delta.days * 24 * 60 * 60 + delta.seconds) * 1000 + delta.microseconds/1000)
这里是我的输入文件的外观的样本。
input23 13:13:05.674430
input47 13:13:06.623822
input52 13:13:07.573215
input66 13:13:08.522607
任何帮助被赞赏,因为我真的被卡在这里! 谢谢
如果没有被打印出来,然后你或许打开一个空文件。 –
我重新检查了一下,可惜的是,这个文件并不是问题。 –
或许'row [1]'只有*一个*时间戳,没有空格?没有样本输入,这是不可能分辨的。你的代码看起来不正确。 –