列表索引超出范围

时间:2011-01-24 23:34:58

标签: python list indexing

这怎么可能,我有一个名为“temp”的列表。这就是我在python解释器中所拥有的。

In [150]: len(temp)
Out[150]: 773942

In [151]: temp[773942]

我得到一个IndexError:list index超出范围。

我很困惑,因为它只是告诉我列表中有773942个值,现在它告诉我索引超出范围?

3 个答案:

答案 0 :(得分:11)

列表的索引在0len(temp) - 1的范围内。你的索引是一个结束的。

例如,长度为3的列表具有以下索引:

["a",   "b",   "c"]
 ^      ^      ^
 0      1      2

访问索引3将是一个结束。

答案 1 :(得分:1)

索引从零开始,因此最后一个元素是len() - 1

答案 2 :(得分:0)

在python len()中返回列表中有多少个元素。但是索引从0开始。例如:

>>>a = [1,2,3]
>>>len(a)
3
>>>a[0]
1
>>>a[2]
3

因此python list的最大索引为len(list) - 1,否则会引发错误。