IndexError:列表索引超出范围(打印整数)

时间:2015-10-16 18:35:17

标签: list python-3.x indexing

我在一段时间内运行我的定义,目前我只是希望它打印列表中的所有数字,直到它达到列表的长度。

然而,当我构建它时,我收到了错误

  

“IndexError:列出索引的愤怒”

我错过了什么?

numList = [5, 2, 21, 8, 20, 36, 1, 11, 13, 4, 17]

def findHighest(intList):
    iIndex = 0
    iValue = intList[iIndex]
    while iIndex != len(intList):
            print(iValue)
            iIndex = iIndex + 1
            iValue = intList[iIndex]

print(findHighest(numList))

我打印了列表,但后来编译错误

1 个答案:

答案 0 :(得分:0)

问题是,当iIndex比列表少1时,索引就是1。例如,如果您的列表大小为10且iIndex为9,则您将添加1到9并设置iValue = intList [10],这是超出范围的,因为列表是基于0的。

numList = [5, 2, 21, 8, 20, 36, 1, 11, 13, 4, 17]

def findHighest(intList):
    iIndex = 0
    iValue = intList[iIndex]
    while iIndex != len(intList)-1:
        print(iValue)
        iIndex = iIndex + 1
        iValue = intList[iIndex]

print(findHighest(numList))