看板 Python 關於我們 聯絡資訊
https://imgur.com/i8gH5zJ labdata.csv 是一個很大筆的資料 run 圖中的程式後 會跳出IndexError: list index out of range 而test1.csv 只會被寫入前面大概一半的資料 row[1] = row[1].split() row.insert(2,row[1][1]) row[1] = row[1][0] 如果沒有中間這三行 test1.csv就能夠被寫入全部資料 請問大家問題出在哪裡呢 有什麼方法能夠解決 因為資料只會越來越多QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.16.150 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1505976698.A.745.html
Sunal: 你要不要先看一下那三行是在做什麼事情 09/21 15:10
almaplty: 就是將row[1]以空格切割 拆成兩個放在row中 09/21 15:24
almaplty: ex. row = ['a','a a','a']變成 ['a','a','a',a']這樣 09/21 15:25
almaplty: ['a','a','a','a'] 09/21 15:26
shadow0326: 你確定檔案中每一行的row[1]都可以分割嗎 09/21 16:58
Sunal: 其實我的意思是樓上這樣 這三行做什麼事 若讀到非預期的 09/21 16:59
Sunal: row時要怎麼處理... 09/21 17:00
almaplty: row[1]是固定格式 確定可以 09/21 17:54
almaplty: 而且如果我將例如row[5] del 後 test1.csv這檔案 09/21 17:55
almaplty: 會再多好幾筆資料出來 09/21 17:55
almaplty: 所以我覺得很奇怪QQ 09/21 17:56
stucode: 問題應該就是樓上們說的非預期輸入。另外我用自己產生的 09/21 18:29
stucode: 資料測沒有你說的問題。可以考慮把csv檔及完整程式碼貼 09/21 18:30
stucode: 上來,不然大家就只能用水晶球幫你debug。 09/21 18:30
almaplty: 謝謝大家 的確是因為非預期輸入... 看好久才發現QQ 09/21 19:59