Python ValueError:时间数据''不符合格式'%m /%d /%Y'

时间:2017-11-20 16:04:34

标签: python csv datetime strptime strftime

我有以下错误:

  

第73行,格式为文件   outRow.append(datetime.datetime.strptime(行[5],'%米/%d /%Y&#39)的strftime('%Y-%间 - %d') )   ValueError:时间数据''不符合格式'%m /%d /%Y'

下面的脚本:

import datetime

  def formatFile(fname):
    print(fname)

       formattedFile=open(workingFolder() + '\\FormattedFile.csv','w')
       writer = csv.writer(formattedFile, delimiter=',', quotechar='"', quoting=csv.QUOTE_ALL,lineterminator='\n')
       writer.writerow(["Name","Unit","Unit Size","Other","Note","Mode Here"])

       with open(fName) as f:
          reader=csv.reader(f,delimiter=',')    
          next(reader)
          for row in reader:
              outRow=[]


              outRow.append(datetime.datetime.strptime(row[5],'%m/%d/%Y').strftime('%Y-%m-%d'))

              #other script here that works well as part of a for loop

              print(outRow)
              writer.writerow(outRow)

我的日期是.csv文件,文本如下:" 11/19/2017" 我想用这种格式:" 2017-11-19"。不确定我做错了什么?

我已经阅读了大约5次,仍然不确定为什么它会给我错误: https://docs.python.org/2/library/datetime.html

此处的csv文件示例:

"Name","Unit","Unit Size","Other","Mode","Date" 
"name here","unit here","YYY x YY","Note","Mode here","11/19/2017"
"name here","unit here","YYY x YY","Note","Mode here","11/20/2017"
"name here","unit here","YYY x YY","Note","Mode here","12/04/2017"

1 个答案:

答案 0 :(得分:1)

列表底部总共有一行文件崩溃了......纠正于此:

for row in reader:
    if "Total" not in row:
       #script here
    else:
        break