Supprimer les nombres de la chaîne en Python
-
Supprimer les nombres de la chaîne en utilisant la méthode
string.join()
en Python -
Supprimer des nombres de la chaîne en Python en utilisant la méthode
string.translate()
-
Supprimer des nombres de la chaîne en Python en utilisant la méthode
re.sub()
Ce tutoriel examinera différentes méthodes pour supprimer les nombres ou les chiffres de la chaîne en Python. Nous supprimons généralement les nombres des données dans le traitement du langage naturel pendant le processus de nettoyage des données.
Supposons que nous ayons une chaîne abcd1234efg567
, et que nous voulions supprimer les chiffres de la chaîne pour obtenir une chaîne comme abcdefg
. Nous pouvons supprimer les nombres de la chaîne en Python en utilisant les méthodes suivantes:
Supprimer les nombres de la chaîne en utilisant la méthode string.join()
en Python
La méthode string.join(iterable)
prend un objet itérable iterable
en entrée, joint ses éléments entre eux en utilisant la valeur de la string
comme séparateur, et renvoie la chaîne résultante en sortie.
Pour supprimer des nombres de la chaîne, nous allons d’abord parcourir la chaîne et sélectionner des valeurs non numériques, les passer à la méthode string.join()
pour les joindre et obtenir la chaîne résultante avec des caractères non numériques en sortie.
L’exemple de code ci-dessous montre comment utiliser la méthode string.join()
pour supprimer les nombres de la chaîne en Python.
string = "abcd1234efg567"
newstring = "".join([i for i in string if not i.isdigit()])
print(newstring)
Production:
abcdefg
Supprimer des nombres de la chaîne en Python en utilisant la méthode string.translate()
La méthode string.translate(map)
en Python 2, prend une table de mappage ou un dictionnaire en entrée et retourne la chaîne après avoir remplacé les caractères spécifiés par les caractères définis dans la table ou le dictionnaire de mappage d’entrée.
L’exemple de code ci-dessous montre comment utiliser la méthode string.translate()
pour supprimer les nombres de la chaîne en Python 2.
from string import digits
string = "abcd1234efg567"
newstring = string.translate(None, digits)
print(newstring)
Production:
abcdefg
En Python 3, la string.translate(table)
prend la table de traduction comme entrée au lieu de la table de mappage ou du dictionnaire, comme en Python 2. Par conséquent, nous devons utiliser la méthode str.maketrans()
pour obtenir un table de traduction pour l’utiliser comme entrée de la méthode string.translate()
.
L’exemple de code ci-dessous montre comment utiliser les méthodes string.translate()
et str.maketrans()
pour supprimer les nombres de la chaîne en Python 3:
from string import digits
string = "abcd1234efg567"
table = str.maketrans("", "", digits)
newstring = string.translate(table)
print(newstring)
Production:
abcdefg
Supprimer des nombres de la chaîne en Python en utilisant la méthode re.sub()
Le re.sub(pattern, replace, string)
prend la string
comme entrée et renvoie la chaîne en remplaçant les occurrences non superposées de la chaîne pattern
(décrite comme une expression régulière) par la valeur replace
dans la chaîne.
L’expression régulière pour les chiffres est [0-9]+
. Il suffit de passer ceci comme argument pattern
et ''
comme replace
pour supprimer les nombres de l’entrée string
en utilisant la méthode re.sub()
.
L’exemple de code ci-dessous montre comment utiliser la méthode re.sub()
pour supprimer des nombres de la chaîne:
import re
string = "abcd1234efg567"
newstring = re.sub(r"[0-9]+", "", string)
print(newstring)
Production:
abcdefg
Article connexe - Python String
- Supprimer les virgules de la chaîne en Python
- Comment vérifier qu'une chaîne est vide de manière pythonique
- Convertir une chaîne en nom de variable en Python
- Comment supprimer les espaces dans une chaîne de caractères en Python
- Comment extraire des nombres d'une chaîne de caractèresen Python
- Comment convertir une chaîne de caractères en datetime en Python