La fonction maketrans en Python

Manav Narula 12 avril 2022
La fonction maketrans en Python

La fonction maketrans() est utilisée pour créer une table de traduction qui associe certains entiers ou caractères à une valeur spécifiée.

Cette valeur peut être un entier, un caractère ou None. Cette table est utilisée avec la fonction translate() pour mapper et remplacer les éléments par les valeurs données dans une chaîne.

On peut créer la table de traduction de trois manières avec le maketrans(). Nous discuterons de ces méthodes dans cet article.

Utilisation de la fonction maketrans() en Python

Nous fournirons la fonction maketrans() avec un seul argument dans la première méthode.

Cet argument est un dictionnaire, où nous cartographions les éléments à l’aide de paires clé-valeur. La clé contiendra les éléments à remplacer, et leurs éléments de remplacement seront la valeur des clés.

On peut afficher la table de traduction et l’utiliser avec la fonction translate(). Voir l’exemple suivant.

t = str.maketrans({"e": "a", "t": "k"})
print(t)
a = "Delftstack"
print(a.translate(t))

Production :

{101: 'a', 116: 'k'}
Dalfkskack

Dans l’exemple ci-dessus, nous avons affiché la table de traduction.

Les éléments à remplacer sont mappés à l’aide de leur valeur ASCII. Nous utilisons la table définie avec la chaîne a en utilisant la fonction translate().

Une autre façon d’utiliser la fonction maketrans() consiste à lui fournir deux arguments. Les deux arguments fournis sont des chaînes et doivent être de longueur égale.

L’élément à un index particulier dans la première chaîne est remplacé par le caractère à l’index correspondant dans la deuxième chaîne.

Par example,

t = str.maketrans("et", "ak")
print(t)
a = "Delftstack"
print(a.translate(t))

Production :

{101: 97, 116: 107}
Dalfkskack

Dans cette méthode, tous les éléments de la table de traduction sont convertis en leurs valeurs ASCII correspondantes.

La dernière méthode implique l’utilisation de trois arguments. Les deux premiers arguments sont les mêmes que ceux présentés dans la méthode précédente.

Le troisième argument supplémentaire est également une chaîne. Les caractères de cet argument sont mappés sur None.

Cela indique qu’ils seront supprimés chaque fois qu’ils seront rencontrés. Voir l’exemple suivant.

t = str.maketrans("et", "ak", "lf")
print(t)
a = "Delftstack"
print(a.translate(t))

Production :

{101: 97, 116: 107, 108: None, 102: None}
Dakskack

Notez comment les caractères de la chaîne du troisième argument, l et f, sont mappés sur None et sont omis de la chaîne finale.

Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Python String

Article connexe - Python Function