Python modifier caractère

Résolu/Fermé
thomas57070
Messages postés
178
Date d'inscription
mercredi 7 décembre 2011
Statut
Membre
Dernière intervention
31 janvier 2014
- 2 avril 2012 à 08:58
heyquem
Messages postés
759
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
29 décembre 2013
- 3 avril 2012 à 09:45
Bonjour,

Voila j'aimerais modifier plusieurs caractères dans une chaine en python exemple:

chaine = input("Entre ta chaine a tester : ")
chaine =chaine.replace(' ','')
chaine =chaine.replace('é','e')
chaine =chaine.replace('à','a')

mais cela me mets une erreur :"eof while scanning triple-quoted string literal"
si quelqu'un connait comment régler cela de manière simple et efficace
Merci
A voir également:

2 réponses

heyquem
Messages postés
759
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
29 décembre 2013
129
2 avril 2012 à 22:19
Bonsoir

Il doit manquer du code car je ne vois rien dans ce que tu as posté qui soit susceptible de poser problème

D'autre part, le principe de ton code n'est pas terrible.
chaine =chaine.replace(' ','') 

déclenche la création d'un nouvel objet de type chaîne dans lequel les blancs ont été éliminés, puis réaffecte le nom chaîne à ce nouvel objet;
puis un autre deuxième objet de type chaîne, dans lequel les 'é' ont été remplacés par des 'e', est créé à partir de ce premier nouvel objet, et le nom chaîne est réaffecté à ce deuxième nouvel objet de type chaîne;
enfin in troisième nouvel objet est créé à partir du second et le nom chaîne est encore redéplacé sur ce troisième nouvel objet.

Pour faire ce genre de transformation de plusieurs caractères différents à la fois, utilise translate:

from string import maketrans

table = maketrans('éà','ea')

chaine = "à l'orée du bois"

print chaine.translate(table, ' ')


ou alors la fonction sub() du module re (expressions régulières)
10
heyquem
Messages postés
759
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
29 décembre 2013
129
3 avril 2012 à 09:45
Première année d'info ou de maternelle ? :

ça sera bon

pas: "sa" sera bon
1