La función Maketrans en Python

Manav Narula 12 abril 2022
La función Maketrans en Python

La función maketrans() se usa para crear una tabla de traducción que asigna algunos enteros o caracteres a un valor específico.

Este valor puede ser un número entero, un carácter o None. Esta tabla se usa con la función translate() para mapear y reemplazar los elementos con los valores dados en una cadena.

Podemos crear la tabla de traducción de tres maneras con el maketrans(). Discutiremos estos métodos en este artículo.

Usando la función maketrans() en Python

Proporcionaremos la función maketrans() con un solo argumento en el primer método.

Este argumento es un diccionario, donde mapeamos los elementos usando pares clave-valor. La llave contendrá los elementos a reponer, y sus elementos de reposición serán el valor de las llaves.

Podemos mostrar la tabla de traducción y usarla con la función translate(). Vea el siguiente ejemplo.

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

Producción :

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

En el ejemplo anterior, mostramos la tabla de traducción.

Los elementos a reemplazar se mapean utilizando su valor ASCII. Usamos la tabla definida con la cadena a usando la función translate().

Otra forma de utilizar la función maketrans() es dotándola de dos argumentos. Los dos argumentos proporcionados son cadenas y deben tener la misma longitud.

El elemento en un índice particular en la primera cadena se reemplaza por el carácter en el índice correspondiente en la segunda cadena.

Por ejemplo,

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

Producción :

{101: 97, 116: 107}
Dalfkskack

En este método, todos los elementos de la tabla de traducción se convierten a sus valores ASCII correspondientes.

El método final implica el uso de tres argumentos. Los primeros dos argumentos son los mismos que los discutidos en el método anterior.

El tercer argumento adicional también es una cadena. Los caracteres de este argumento se asignan a None.

Esto indica que se eliminarán siempre que se encuentren. Vea el siguiente ejemplo.

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

Producción :

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

Observe cómo los caracteres de la cadena del tercer argumento, l y f, se asignan a None y se omiten de la cadena final.

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

Artículo relacionado - Python String

Artículo relacionado - Python Function