С вашим кодом вы используете i
для итерации массива d
, но затем используете i
для доступа к элементу массива d[i]
, таким образом, i == d[i]
будет истинно для первых трех итераций, затем после этого оно будет ложным (например, i = 2
, d[2] = 1
, следовательно, (i == d[i]) == False
. Кроме того, нет необходимости в выражении elif
, поскольку вас беспокоит только один случай. Используйте переменную, чтобы отслеживать предыдущий элемент в массиве, и это должно сработать.
d=[1,1,1,2,2,3,4,5,5,5]
temp = d[0]
for i in d:
if temp != i:
print('\n')
print(i)
temp = i
Редактировать: извините, неправильно прочитал код, объяснение должно быть лучше