这里是我的代码的一部分(很大一部分)。 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