Comment supprimer les espaces dans une chaîne en Python
Introduction
Python fournit trois méthodes que vous pouvez utiliser pour supprimer les espaces superflus d'une chaîne et renvoyer un nouvel objet chaîne. Les méthodes strip de la chaîne peuvent supprimer les espaces en début de chaîne, les espaces en fin de chaîne ou les deux. Pour en savoir plus sur la suppression des espaces, y compris comment supprimer tous les espaces ou seulement les espaces dupliqués, consultez Comment supprimer des espaces d'une chaîne en Python.
L'espace blanc comprend tous les caractères d'espace Unicode, tels que les espaces, les tabulations (\t), les retours chariot (\r) et les nouvelles lignes (\n). La classe Python str() a les méthodes suivantes que vous pouvez utiliser pour supprimer les espaces blancs d'une chaîne :
strip([chars]): Supprime les caractères des deux côtés d'une chaîne. Lorsquecharsest omis ou estNone, renvoie une nouvelle chaîne avec tous les espaces blancs en tête et en queue supprimés.rstrip([chars]): Supprime les caractères du côté droit d'une chaîne. Lorsquecharsest omis ouNone, renvoie une nouvelle chaîne avec tous les espaces blancs à la fin supprimés.lstrip([chars]): Supprime les caractères du côté gauche d'une chaîne. Lorsquecharsest omis ouNone, retourne une nouvelle chaîne avec tous les espaces en début supprimés.
Élaguer les espaces vides d'une chaîne en utilisant les méthodes Strip
L'exemple suivant montre comment supprimer les espaces de début, les espaces de fin, et à la fois les espaces de début et de fin d'une chaîne :
s1 = ' shark '
print(f"string: '{s1}'")
s1_remove_leading = s1.lstrip()
print(f"remove leading: '{s1_remove_leading}'")
s1_remove_trailing = s1.rstrip()
print(f"remove trailing: '{s1_remove_trailing}'")
s1_remove_both = s1.strip()
print(f"remove both: '{s1_remove_both}'")
La sortie est :
string: ' shark '
remove leading: 'shark '
remove trailing: ' shark'
remove both: 'shark'
L'exemple suivant montre comment utiliser les mêmes méthodes de desserrage pour enlever plusieurs caractères d'espacement d'une chaîne :
s2 = ' \n shark\n squid\t '
print(f"string: '{s2}'")
s2_remove_leading = s2.lstrip()
print(f"remove leading: '{s2_remove_leading}'")
s2_remove_trailing = s2.rstrip()
print(f"remove trailing: '{s2_remove_trailing}'")
s2_remove_both = s2.strip()
print(f"remove both: '{s2_remove_both}'")
La sortie est :
string: '
shark
squid '
remove leading: 'shark
squid '
remove trailing: '
shark
squid'
remove both: 'shark
squid'
La sortie montre que l'utilisation des méthodes strip avec l'argument chars omis ne supprime que les espaces, les caractères de nouvelle ligne et de tabulation en début et en fin de chaîne. Tout espace blanc qui n'est pas au tout début ou à la fin de la chaîne n'est pas supprimé.
Élaguer un caractère d'espace spécifique d'une chaîne en utilisant les méthodes Strip
Vous pouvez également supprimer uniquement un caractère ou des caractères du début et de la fin d'une chaîne en spécifiant l'argument chars. L'exemple suivant montre comment supprimer uniquement le caractère de nouvelle ligne en tête d'une chaîne :
s3 = '\n sammy\n shark\t '
print(f"string: '{s3}'")
s3_remove_leading_newline = s3.lstrip('\n')
print(f"remove only leading newline: '{s3_remove_leading_newline}'")
La sortie est :
string: '
sammy
shark '
remove only leading newline: ' sammy
shark '
La sortie montre que la méthode lstrip() supprime le caractère de nouvelle ligne en tête mais ne supprime pas les espaces en tête de la chaîne.
Notez que la méthode strip ne supprime que les caractères spécifiques lorsqu'ils sont les caractères externes les plus en avant et les plus en arrière. Par exemple, vous ne pouvez pas utiliser rstrip() pour supprimer uniquement le caractère de tabulation final de s3='\n sammy\n shark\t ' à cause des espaces après \t.
Conclusion
Dans cet article, vous avez utilisé les méthodes strip(), rstrip() et lstrip() pour supprimer les espaces vides en début et en fin de chaînes. Pour apprendre comment supprimer des espaces et des caractères à l'intérieur des chaînes, référez-vous à Comment supprimer des espaces d'une chaîne en Python. Continuez votre apprentissage avec d'autres tutoriels sur les chaînes en Python.
