python超出列表范围,(Python)列表索引超出范围 - 迭代
生活随笔
收集整理的這篇文章主要介紹了
python超出列表范围,(Python)列表索引超出范围 - 迭代
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
for i in range(len(lst)):
if lst[i][0]==1 or lst[i][1]==1:
lst.remove(lst[i])
return lst
This gives "IndexError: list index out of range" Why is this happening?
解決方案
You're modifying the list you're iterating over. If you do that, the size of the list shrinks, so eventually lst[i] will point beyond the list's boundaries.
>>> lst = [1,2,3]
>>> lst[2]
3
>>> lst.remove(1)
>>> lst[1]
3
>>> lst[2]
Traceback (most recent call last):
File "", line 1, in
IndexError: list index out of range
It's safer to construct a new list:
return [item for item in lst if item[0]!=1 and item[1]!=1]
總結(jié)
以上是生活随笔為你收集整理的python超出列表范围,(Python)列表索引超出范围 - 迭代的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: integer比较_每日一题:Integ
- 下一篇: delphi精品项目源码_项目是如何死掉