当我遍历列表时返回列表索引超出范围

时间:2018-09-05 04:10:12

标签: python list range

inp = [1,2,3,5,6]

def o(k):

    x =[]
    for item in k:
        if item != k[item-1] and item != item+1:
            x.append(item)

当我尝试使用输入来运行代码时,它只是说 “超出范围”

1 个答案:

答案 0 :(得分:0)

您好,根据您的代码,我了解您正在假设item是数组的索引。但这不是for item in k:循环在python中工作的方式。在每个迭代项上,将是数组的下一个“元素”,而不是下一个“索引”。另外,item != item + 1没有任何意义,因为它永远都是正确的。我认为您打算写k[item] != k[item + 1]