2016-03-23 59 views
0

我有一个列的日期看起来像“2/15/2016 1:44:00 PM”的.csv文件,运行时出现以下错误下面...任何人都可以提供什么是错误的投入?Python- strptime ValueError未转换的数据仍然是::00

CODE: -

import csv 
import datetime as dt 
import os 

File = 'C:/Users/Alan Cedeno/Desktop/Test_Folder/HiSAM1_data_160215_164858.csv' 
root, ext = os.path.splitext(File) 
output = root + '-new.csv' 
with open(File,'r') as csvinput,open(output, 'w') as csvoutput: 

    writer = csv.writer(csvoutput, lineterminator='\n') 
    reader = csv.reader(csvinput) 

    all = [] 
    row = next(reader) 
    for line in reader: 
     row.append(dt.datetime.strptime(line[0],'%m/%d/%Y %H:%M').time()) 
     all.append(row) 

    for row in reader: 
     row.append(row[0]) 
     all.append(row) 

    writer.writerows(all) 

错误 -

ValueError        Traceback (most recent call last) 
c:\users\alance~1\appdata\local\temp\tmpujjfa2.py in <module>() 
    14   row = next(reader) 
    15   for line in reader: 
---> 16    row.append(dt.datetime.strptime(line[0],'%m/%d/%Y %H:%M')) 
    17    all.append(row) 
    18 

C:\Users\Alan Cedeno\AppData\Local\Enthought\Canopy\App\appdata\canopy- 1.6.1.3253.win-x86_64\lib\_strptime.pyc in _strptime(data_string, format) 
    326  if len(data_string) != found.end(): 
    327   raise ValueError("unconverted data remains: %s" % 
--> 328       data_string[found.end():]) 
    329 
    330  year = None 

ValueError: unconverted data remains: :00 

这里的数据 -

enter image description here

回答

1

截图根据问题和追溯的信息在注释中给出,你的日期时间格式字符串是不完整的 - 缺少se conds,应该是:

%m/%d/%Y %H:%M:%S 
+0

我试过了,它给了我这个ValueError:time data'2016/2/15 13:44:00'不符合格式'%m /%d /%Y% H:%M:S%p' 我已经用数据图像更新了问题。 – dontbadick

+0

@AlanCedeno在'S'之前观看'%'。 – alecxe

+0

现在它给了我这个错误ValueError:time data'2016/2/16 13:44:00'与格式不匹配'%m /%d /%Y%H:%M:%S%p' – dontbadick

相关问题