1
我想批量更改csv文件中的日期列值,同時也刪除字符串的前導部分。目前的格式是,例如「Company Name Here Oct 2 2016 9:43 PM」。我需要ISO格式的日期,如「20161021502」。python批量更改csv日期
我卡在從CSV文件拆分對象,收到此錯誤:
Traceback (most recent call last):
File "C:\Users\dave\AppData\Local\Programs\Python\Python35\Scripts\dealerTestData.py", line 13, in <module>
month, day, year, time = newDate.split()
ValueError異常:沒有足夠的數值解壓縮(預計4,拿到2)
到目前爲止我的代碼看起來是這樣的:
dealerFile = open('C:/Users/dave/Downloads/Prospect_Source_Measurement_Details- 2016112.csv')
dealerReader = csv.reader(dealerFile)
dealerData = list(dealerReader)
dealerData
for index in dealerData:
newDate = (index[0])[-19:]
totalDate = repr(newDate)
month, day, year, time = newDate.split()
time = datetime.strptime(time, '%I:%M%p')
month = datetime.strptime(month, '%b')
totalDate = year + month.strftime('%m') + day + time.strftime('%H%M')
print(newDate)
如果我註釋掉一切都會過去newDate = index[0][-19:]
可以打印出整列減去公司名稱。只要我嘗試將它表示爲一個字符串並解析它,我就會得到錯誤。
打印'newDate'並看看你得到了什麼。它似乎只有兩個元素,但你試圖分配給四個變量。 – furas
實際上'20161021502'不完全是一個有效的ISO 8601日期。您缺少'T'分隔符:'2016102T1502'。 – qzb