我正在使用Enthought canopy Python 2.7.9。
涉及for
,range
,並len
一個非常簡單的Python程序:索引錯誤:列表索引超出範圍
num = 10
mylist = range(num)
for i in range(len(mylist)):
print "Size of mylist is %d" %(len(mylist))
print "i=%d" %(i)
print "mylist[%d] %d" %(i, mylist[i])
mylist=mylist[:-1]
令我百思不解的是,由於mylist
長度已減少到5,爲什麼指數i
尚可5,導致指數錯誤?
我知道在Python中的for-loop工作與迭代。但我不知道這個機制在這個例子中是如何工作的。
作爲一個方面說明,你通常應該使用'my_list'中更習慣的''item。如果你還需要和索引,請查看'enumerate()'。 – foresmac