Maison >développement back-end >Tutoriel Python >Comment puis-je supprimer des caractères spécifiques d'une chaîne en Python ?
En Python, les chaînes sont immuables, ce qui signifie qu'une fois créées, leur contenu ne peut pas être modifié. Pour modifier une chaîne, vous devez la relier à une nouvelle chaîne avec les modifications souhaitées.
La méthode str.replace est utilisée pour remplacer toutes les occurrences d'une sous-chaîne donnée dans une chaîne. Cependant, cela crée une nouvelle chaîne plutôt que de modifier la chaîne d'origine. Pour mettre à jour la chaîne d'origine, vous devez réattribuer la valeur remplacée à la même variable.
line = "Hello world!" line = line.replace("!", "") # Replace all occurrences of "!" with an empty string
Dans Python 2.6 et supérieur, vous pouvez utiliser le str. méthode Translate pour supprimer des caractères spécifiques d’une chaîne. Cette méthode vous permet de spécifier une table de traduction, qui mappe les caractères à remplacer.
line = line.translate(None, "!@#$") # Remove all occurrences of "!@#$"
La méthode re.sub effectue une substitution d'expression régulière sur une chaîne. Vous pouvez l'utiliser pour supprimer des caractères dans une classe de caractères.
import re line = re.sub(r"[@$%]", "", line) # Remove all occurrences of "@$%"
Dans Python 3, les chaînes sont Unicode, ce qui nécessite une approche différente pour supprimer des caractères. Au lieu de transmettre None comme deuxième argument à str.translate, vous devez transmettre un dictionnaire de traduction qui mappe les points de code Unicode à None pour que les caractères soient supprimés.
translation_table = dict.fromkeys(map(ord, "!@#$"), None) line = line.translate(translation_table)
D'autres méthodes pour supprimer des caractères incluent :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!