Bonjour,

Je m'entraîne sur le site France-IOI et je dois créer un programme en python qui doit supprimer les doublons d'une chaîne de caractère.
Par exemple, on aurait :

entrée :
baaabbacddc
sortie :
b

Etape par étape :

baaabbacddc
baaabbacc
babbacc
babba
baa
b

J'ai fait un programme, mais j'obtiens l'erreur suivante :
IndexError: list index out of range
Je ne comprends pas pourquoi j'obtiens cette erreur, car mon programme ressemble très fortement à l'algorithme du tri à bulle et celui-ci fonctionne...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
chaine = input()
liste = list(chaine)
 
supprDoublon = True
while supprDoublon == True:
    supprDoublon = False
    for caractere in range(0, len(liste)-1):
        if liste[caractere] == liste[caractere+1]:
            del(liste[caractere])
            del(liste[caractere+1])
            supprDoublon = True
for caractere in range(len(liste)-1):
   print(liste[caractere])
Merci d'avance pour toute aide !