351 votes

La meilleure façon de remplacer plusieurs caractères dans une chaîne?

Je dois remplacer certains caractères comme suit: , , ...

J’ai codé comme suit, mais je suppose qu’il devrait y avoir une meilleure façon. Des indices ?

81voto

ghostdog74 Points 86060
>>> string="abc&def#ghi"
>>> for ch in ['&','#']:
...   if ch in string:
...      string=string.replace(ch,"\\"+ch)
...
>>> print string
abc\&def\#ghi

76voto

tommy.carstensen Points 636

Voici une méthode python3 utilisant `` et `` :

La chaîne imprimée est `` .

45voto

thefourtheye Points 56958

Il suffit d’enchaîner les `` fonctions comme celle-ci

Si les remplacements vont être plus nombreux, vous pouvez le faire de cette manière générique

18voto

KennyTM Points 232647

Allez-vous toujours ajouter une barre oblique inverse? Si c’est le cas, essayez

Ce n’est peut-être pas la méthode la plus efficace, mais je pense que c’est la plus facile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X