這裏是我的代碼的一部分(很大一部分)。 http://pastebin.com/KCZNkYNB嘗試使用list.insert時出現Python索引錯誤
我在設計中發生的事情是迭代這個序列,直到我計算的距離最小化1cm。我不想移動到我的下一個時代,直到那個時候,這就是爲什麼我認爲我應該使用.insert作爲我的列表。我需要覆蓋當前指數的數據。
我得到的錯誤是:在該引擎收錄文件行號54
Traceback (most recent call last):
File "receiver2.py", line 342, in <module>
main()
File "receiver2.py", line 244, in main
N.insert(k, (dec.sqrt((dec(satellite_output.x[k]) - dec(x_veh_coords[epoch]))**2 + (dec(satellite_output.y[k]) - d
ec(y_veh_coords[epoch]))**2 + (dec(satellite_output.z[k]) - dec(z_veh_coords[epoch]))**2)))
IndexError: list index out of range
此錯誤對應。
我不明白的是當插入時索引超出範圍。 完整的pastebin輸出:http://pastebin.com/qKhRjn2Q 您將在輸出的底部看到最後一個「k」指數爲7,然後它達到了時期1,並增加到指數8,但隨後被索引超出範圍。至於爲什麼會發生這種情況,我感到非常困惑。我向你保證所有數據都存在,試圖插入,就好像我要推薦.insert部分並取消註釋.append,它工作正常。不幸的是,我只是意識到append是「隱藏」我需要的數據才能正確計算我的jacobian。
我希望我已經提供了足夠的信息。謝謝你盡你所能的幫助!
假設k是它或範圍?嘗試分成幾行代碼。這更多的是關於如何使用調試器的問題。 – RParadox