Python,数组的下一个元素

问题描述 投票:0回答:2

我需要访问数组的下一个元素以将其与上一个元素进行比较,尝试通过索引进行操作,但是索引超出范围

lista =  [1,2,2,3,4,5,5,6,7,8]
for i in range(len(lista)):
if lista[i]==lista[i+1]: print("same number")
python arrays indexing
2个回答
4
投票

您可以将列表本身的位置偏移一个zip并完全避免使用索引:

lista =  [1,2,2,3,4,5,5,6,7,8]
for a, b in zip(lista, lista[1:]):
    if a == b: 
        print("same number", a, b)

打印:

相同编号2 2相同的数字5 5


0
投票

您可以在执行此过程之前简单地检查列表的大小。检查下面的代码

for i in range(len(lista)):
if i == len(lista)-1:
    print("end Process")
else:
    a = lista[i]
    b = lista[i+1]
    if a == b:
        print( str(a) + " and " + str(b) + " are the same number ")

或在for循环中使用len(lista)-1

for i in range(len(lista)-1):
        a = lista[i]
        b = lista[i+1]
        if a == b:
            print( str(a) + " and " + str(b) + " are the same number ")
© www.soinside.com 2019 - 2024. All rights reserved.