我正在尝试删除数组中的重复元素。有很多方法,但是我试图提出自己的方法并尝试以下代码。
x=[2,1,3,5,3,5]
for i in range(0,len(x)):
for j in range(0,len(x)):
if (x[i]==x[j+1]):
del x[j+1]
for k in range(0,len(x)):
print(x[k])
我在第4行收到以下错误 列出索引超出范围。
请帮助我!
答案 0 :(得分:0)
我可以看到两个错误:
j+1
。当第二个for
循环到达循环结束时,j
等于5
,然后j+1
等于6
,但是x[6]
会超出范围。6
开始,但是在删除其中一个元素后,数组的长度为5
。但是,for
循环无法识别这一点,并且一直持续到i=5
而不是停在i=4
上,并且x[5]
超出了范围。