一個奇怪的事情發生在這裏,我試圖增加兩個額外的行到現有的csv文件,所以我打開它(edit1.csv),重新它 - 寫入到一個新文件(EDIT 2)有兩個額外的行(一個寫在第一空間數字100,並且在前三空間的第二行以數字9。「列表索引超出範圍」迭代通過csv文件時
ifile = open('C:\PyProject\edit1.csv', "rb")
reader = csv.reader(ifile)
edited = open('C:\PyProject\edit2.csv', "wb")
writer = csv.writer(edited, delimiter=',')
for row in reader:
writer.writerow(row)
writer.writerow([100])
writer.writerow('999')
edited.close()
ifile.close()
到目前爲止好,我得到一個新的文件(edit2.csv),看起來完全像我希望它看起來
問題是,當我試圖迭代通過新文件,以找到第二行列是空的(見下文),我得到一個錯誤
-
with open('C:\PyProject\edit2.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=',')
sec_col = []
for row in readCSV:
blanker = row[1]
sec_col.append(blanker)
trial_index = [i for i,x in enumerate(sec_col) if x == '']
-
blanker = row[1]
IndexError: list index out of range
奇怪的是,如果我打開新文件,並刪除所有空行後兩個我都手動添加,代碼運行得很好。
很抱歉,如果我的代碼是有點亂,我還是新在這個:)
感謝。
解決,加入[100,「」,「」],而不是僅僅100對不起張貼這樣一個小問題。 – Zennie