list index out of range是怎麼回事

2021-05-04 18:37:41 字數 4642 閱讀 9922

1樓:矽谷創業快訊

在python中,list index out of range意思是列表的索引分配超出列範圍。

對於有序序列: 字串 str 、列表 list 、元組 tuple進行按索引取值的時候,預設範圍為 0 ~ len(有序序列)-1,計數從0開始,而不是從1開始,最後一位索引則為總長度減去1。

當然也可以使用負數表示從倒數第幾個,計數從-1開始,則對於有序序列,總體範圍為 -len(有序序列) ~ len(有序序列)-1,如果輸入的取值結果不在這個範圍內,則報這個錯。

解決辦法:檢查索引是否在 -len(有序序列) ~ len(有序序列)-1 範圍內,修改正確。如下圖,len(a)=2,則對於有序序列,總體範圍為 0~ 1。

2樓:654鄉

python中出現list index out of range有兩種情況:

第1種可能情況:list[index]index超出範圍,也就是常說的陣列越界。

第2種可能情況:list是乙個空的, 沒有乙個元素,進行list[0]就會出現該錯誤,這在爬蟲問題中很常見,比如有個列表爬去下來為空,統一處理就會報錯。

如在c語言中:a[10], 那麼你引用a[10]就會出這型別錯誤(因為其範圍是a[0]~a[9])。在python中:

a = [1,2,3,4,5], 那麼如果你使用a[5]也會出類似問題(範圍為a[0]~a[4])。

儘管列表允許把自身作為元素包含在內,但建議要特別小心:在這樣的列表上,equals 和 hashcode 方法不再是定義良好的。

某些列表實現對列表可能包含的元素有限制。例如,某些實現禁止 null

元素,而某些實現則對元素的型別有限制。

試圖新增不合格的元素會丟擲未經檢查的異常,通常是 nullpointerexception 或

classcastexception。試圖查詢不合格的元素是否存在可能會丟擲異常,也可能簡單地返回 false;某些實現會採用前一種行為,而某些則採用後者。

概括地說,試圖對不合格元素執行操作時,如果完成該操作後不會導致在列表中插入不合格的元素,則該操作可能丟擲乙個異常,也可能成功,這取決於實現的選擇。此介面的規範中將這樣的異常標記為「可選」。

3樓:千木襄襄

集合越界了的意思。比如這個list的大小只有5,而你使用了list[10],就會報集合索引越界。

集合框架示意圖:

list介面的一些實現類:

4樓:醉意撩人殤

list index out of range一般是由於陣列下標超過陣列長度了:如在c語言中:a[10], 那麼你引用a[10]就會出這型別錯誤(因為其範圍是a[0]~a[9])在python中:

a = [1,2,3,4,5], 那麼如果你使用a[5]也會出類似問題(範圍為a[0]~a[4])。

外部輸入的資料都可能存在問題。所以通常在readlines後要做一次處理:

for line in file.readlines():

if not line.strip():continue

r = line.split('\t')

if len(r)<3:continue

print r

try:

records.setdefault(int(r[1]), {})

records[int(r[1])].setdefault(int(r[0]), {})

records[int(r[1])][int(r[0])] = float(r[2])

except valueerro:

continue

這樣就避免了空行,字段數不足,以及型別轉換出錯。

5樓:匿名使用者

檢視你的i的值,當i為12時,i+1等於13,是否有對應的資料索引

6樓:匿名使用者

一般是由於陣列下標超過陣列長度了:

如在c語言中:a[10], 那麼你引用a[10]就會出這型別錯誤(因為其範圍是a[0]~a[9])

在python中:a = [1,2,3,4,5], 那麼如果你使用a[5]也會出類似問題(範圍為a[0]~a[4])

python問題:請問為什麼會提示list index out of range?

7樓:匿名使用者

錯誤的bai原因就是列表賦值實際傳的du是「指標」,zhia=x,刪除daoa中的元素實際也是刪除專x其中的值,屬要完全拷貝其中的值要用 a=x[:]

>>> x=[5,10,20,50]

>>> a=x

>>> del a[1]

>>> a

[5, 20, 50]

>>> x

[5, 20, 50]

>>> a=x[:]

>>> del a[1]

>>> a

[5, 50]

>>> x

[5, 20, 50]

indexerror: list index out of range什麼意思?

8樓:孤獨飛雪飄

indexerror: list index out of range

情況一:

list[index]中的index下標超出範圍了,所以出現了訪問越界;

情況二:

list本身就是乙個空的,沒有乙個元素,所以當訪問到list[0]的時候,就會出現該錯誤。

提示list index out of range,但我怎麼都看不出錯在哪兒了,初學python,求大神解答!!急!!!

9樓:四輪嬰兒車

只能猜一下了。

既然是linef[0]越界了。那麼有一種可能就是,你讀入的檔案chengji.txt裡應該有空行,所以導致出現了乙個空的linef。

建議樓主先試著把檔案裡多餘的空行刪掉。

10樓:匿名使用者

你在sum=0的前面加個print linef 看看是否split成功了

linef沒有index=0的項

關於python一直提示indexerror: list index out of range是怎麼回事?

11樓:匿名使用者

錯誤提示是陣列呼叫超出範圍了

extract()後邊帶個【0】是什麼意思?**是自己寫的嗎?

還有item陣列用之前給個定義

12樓:匿名使用者

灑脫是人生的一種境界。灑脫不是無所事事、不思進取,也不是看破紅塵、心灰意內冷,更不是聲色容

犬馬、紙醉金迷。灑脫是一種世事洞明的豁達,一種淡泊名利的超脫,一種有所為有所不為的風度。灑脫不是放棄,而是放下,放下不切實際的幻想,放下無法更改的過去,行雲流水,任其所之。

怎麼解決呼叫函式時出現indexerror: list index out of range

13樓:

一般外部輸入的資料都可能存在問題。所以通常在readlines後要做一次處理

for line in file.readlines():

if not line.strip():continuer = line.split('\t')

if len(r)<3:continue

print r

try:

records.setdefault(int(r[1]), {})records[int(r[1])].setdefault(int(r[0]), {})

records[int(r[1])][int(r[0])] = float(r[2])

except valueerro:

continue

這樣就避免了空行,字段數不足,以及型別轉換出錯。

python:list index out of range

14樓:珍琪可可

遇到這種情copy況 不妨把它列印bai出來:

num=[2,3,4,6,1]

m=0while m是:

>>> 12

34traceback (most recent call last):

file "c:\documents and settings\administrator\妗岄潰du\1.py", line 4, in

indexerror: list index out of range

這樣你可以zhi知道了把

,在m=4的那dao個迴圈那裡出了問題,因為這個序列長度為5,它不可能有num[5]的情況,就叫做溢位了(list index out of range),所以在if num[m]

如果你想給序列排序,不用這麼麻煩的 ,有內建函式。list.sort()就可以了。

indexerror: list index out of range這個問題怎麼解決

15樓:heart阿飛

你的int(seedlist_for_split[0])或int(seedlist_for_split[1])的值大於2了,你輸入的數值是多少啊!

回南天是怎麼回事

回南天是天氣返潮現象,一般出現在春季的二三月份,回南天 出現時,空氣濕度接近飽和,牆壁甚至地面都會 冒水 華南屬於典型的海洋性 帶季風氣候,因此每當每年3月至4月時,從中國南海吹來的暖濕氣流,與從中國北方南下的冷空氣相遇,在嶺南形成準靜止鋒,使華南地區的天氣陰晴不定 非常潮濕 回南天形成的主要原因 ...

愛情是怎麼一回事,什麼是談戀愛,是怎麼一回事?

愛情 是酸酸的 甜甜的 苦苦的 愛情是真實的 是持久地 是我們知道的最甜的也是最苦的 其實呢?我想愛情不就是兩個人的事嗎?愛乙個不愛你的人又是何必呢?我想那應該算是了種解脫啊!找乙個愛你的人吧。他不珍惜就讓他去後悔 沒資格有你的愛 男人?其實女人也搞不懂他的!終於明白 愛情 只是模特身上那件美麗霓裳...

愛情到底是怎麼一回事啊,愛情到底是怎麼一回事呢?

愛情是什麼?愛情是非常抽象的東西,是一種感覺,一種體味 一種身心超越現實的純美反應,牽動著整個身心和悲喜情緒。而且力量巨大,大到往往不是理智可以控制的,或根本無理可講。愛的感覺?愛是一種思緒,似藍天裡飄盪的白雲。愛是陽光,是風,空氣。愛是一種心痛,似撥動你心靈的顫音。愛是一汪情懷,似靜謐而又蕩漾的海...