745 votes

Python supprime tous les espaces dans une chaîne de caractères

Duplicata possible :
Comment couper les espaces blancs (y compris les tabulations) ?

Je veux éliminer tous les espaces d'une chaîne de caractères, aux deux extrémités et entre les mots.

J'ai ce code Python :

def my_handle(self):
    sentence = ' hello  apple  '
    sentence.strip()

Mais cela n'élimine que les espaces blancs des deux côtés de la chaîne. Comment supprimer tous les espaces ?

1581voto

Cédric Julien Points 24177

Si vous souhaitez supprimer les espaces de début et de fin, utilisez la fonction str.strip() :

sentence = ' hello  apple'
sentence.strip()
>>> 'hello  apple'

Si vous voulez supprimer tous les espaces, vous pouvez utiliser str.replace() :

sentence = ' hello  apple'
sentence.replace(" ", "")
>>> 'helloapple'

Si vous souhaitez supprimer les espaces dupliqués, utilisez la fonction str.split() :

sentence = ' hello  apple'
" ".join(sentence.split())
>>> 'hello apple'

250voto

Mark Byers Points 318575

Pour supprimer uniquement des espaces utiliser str.replace :

sentence = sentence.replace(' ', '')

Pour supprimer tous les caractères d'espacement (espace, tabulation, nouvelle ligne, etc.) vous pouvez utiliser split puis join :

sentence = ''.join(sentence.split())

ou une expression régulière :

import re
pattern = re.compile(r'\s+')
sentence = re.sub(pattern, '', sentence)

Si vous voulez seulement enlever les espaces blancs du début et de la fin, vous pouvez utiliser strip :

sentence = sentence.strip()

Vous pouvez également utiliser lstrip pour supprimer les espaces uniquement au début de la chaîne, et rstrip pour supprimer les espaces à la fin de la chaîne.

17voto

wal-o-mat Points 1413

Pour supprimer les espaces du début et de la fin, utilisez strip .

>> "  foo bar   ".strip()
"foo bar"

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