Supprimer les nombres de la chaîne en Python

Muhammad Waiz Khan 30 janvier 2023
  1. Supprimer les nombres de la chaîne en utilisant la méthode string.join() en Python
  2. Supprimer des nombres de la chaîne en Python en utilisant la méthode string.translate()
  3. Supprimer des nombres de la chaîne en Python en utilisant la méthode re.sub()
Supprimer les nombres de la chaîne en Python

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