Une alternative est d'utiliser des expressions régulières et de faire correspondre ces étranges caractères d'espace blanc aussi. Voici quelques exemples :
Supprimer TOUS les espaces dans une chaîne, même entre les mots :
import re
sentence = re.sub(r"\s+", "", sentence, flags=re.UNICODE)
Supprime les espaces au DÉBUT d'une chaîne de caractères :
import re
sentence = re.sub(r"^\s+", "", sentence, flags=re.UNICODE)
Supprime les espaces à la FIN d'une chaîne de caractères :
import re
sentence = re.sub(r"\s+$", "", sentence, flags=re.UNICODE)
Supprime les espaces au DÉBUT et à la FIN d'une chaîne de caractères :
import re
sentence = re.sub("^\s+|\s+$", "", sentence, flags=re.UNICODE)
Supprimez UNIQUEMENT les espaces DUPLICATA :
import re
sentence = " ".join(re.split("\s+", sentence, flags=re.UNICODE))
(Tous les exemples fonctionnent aussi bien avec Python 2 qu'avec Python 3).
13 votes
À quoi doit ressembler votre résultat ?
hello apple
?helloapple
?4 votes
@JoachimPileborg, pas exactement je pense, car il s'agit aussi de réduire les espaces blancs entre les mots.
6 votes
Helloapple doit être ma sortie
18 votes
Corrigez-moi si je me trompe, mais "espace blanc" n'est pas synonyme de "caractères d'espacement". La réponse actuelle marquée comme correcte ne supprime pas tous les espace blanc . Mais, comme elle est marquée comme correcte, elle doit avoir répondu à la question prévue ? Donc nous devrions modifier la question pour refléter la réponse acceptée ? @Kalanamith Vouliez-vous, ou voulez-vous, supprimer tous les espaces blancs ou seulement les espaces ?