while i!=dlina_spis-1: i+=1 while j!=dlina_spis: j+=1 if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: del spisok[j] dlina_spis-=1
while i!=dlina_spis-1: i+=1 while j!=dlina_spis: j+=1 if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: del spisok[j] dlina_spis-=1
while i!=dlina_spis-1: i+=1 while j!=dlina_spis: j+=1 if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: del spisok[j] dlina_spis-=1
В циклах лучше вместо не равно поставить меньше. Перестраховка малость
n=-1 dlina_spis=len(spisok)-1 for i in range (0,dlina_spis-1): n+=1 for j in range(n,dlina_spis): if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: spisok.pop(j) dlina_spis=dlina_spis-1 при дебаге j больше dlina_spis
А нехуй использовать range И нехуй список менять пока итерируешься по нему
while i!=dlina_spis-1: i+=1 while j!=dlina_spis: j+=1 if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: del spisok[j] dlina_spis-=1
Инициализировал, выше в коде. Не скопировал просто i=-1 j=0 dlina_spis=len(spisok)-1 while i!=dlina_spis-1: i+=1 while j!=dlina_spis: j+=1 if spisok[i][1] == spisok[j][1] and spisok[i][3] == spisok[j][3] and spisok[i][0] == spisok[j][0]: del spisok[j] dlina_spis-=1