Método translate() en Python

El método translate() en Python es una función que se utiliza para realizar traducciones de caracteres individuales o eliminar caracteres específicos de una cadena. Este método es útil cuando se necesita manipular cadenas de texto de una manera eficiente y predecible, especialmente para realizar tareas de limpieza o reemplazo de caracteres.

Página de referencia: resume la firma y el uso de un método concreto. El valor está en el patrón: qué recibe, qué devuelve y en qué situación lo usarías.

Copia el ejemplo al editor, cámbiale los argumentos y comprueba la salida.

A continuación, te proporciono una lección detallada sobre el método translate() en Python:


Sintaxis del Método translate() en Python

Ejemplo

    table = str.maketrans('aeiou', '12345')

str.translate(table)
print(table)
str.translate(table)
print(table)

  

En este ejemplo, hemos creado una tabla de traducción que mapea las vocales "aeiou" a los números "12345". Luego, usamos translate() para aplicar esta traducción a la cadena original.


Uso para eliminar caracteres

También puedes usar translate() para eliminar caracteres de una cadena especificando None como el mapeo en la tabla de traducción.

Ejemplo

    # Crear una tabla de traducción para eliminar caracteres
translation_table = str.maketrans('', '', 'aeiou')

# Usar translate() para eliminar las vocales
texto_original = "hola mundo"
texto_modificado = texto_original.translate(translation_table)
print(texto_modificado)  # Resultado: "hll mnd"
  
Abrir en editor

En este ejemplo, hemos creado una tabla de traducción que mapea las vocales "aeiou" a None , lo que efectivamente elimina las vocales de la cadena original.


Usando un diccionario personalizado

También puedes utilizar un diccionario personalizado en lugar de una tabla de traducción creada con maketrans() . El diccionario debe mapear caracteres de entrada a sus correspondientes caracteres de salida.

Ejemplo

    # Crear un diccionario de traducción personalizado
translation_dict = {'h': 'H', 'o': 'O', 'l': 'L', 'a': 'A'}

# Usar translate() con el diccionario
texto_original = "hola"
texto_traducido = texto_original.translate(str.maketrans(translation_dict))
print(texto_traducido)  # Resultado: "HOLA"
  
Abrir en editor

En este ejemplo, hemos creado un diccionario que especifica cómo se deben traducir los caracteres en la cadena original.

El método translate() es muy útil para realizar operaciones de manipulación de cadenas en las que se necesite reemplazar o eliminar caracteres de manera eficiente. Puedes personalizar la tabla de traducción según tus necesidades específicas.


Practica Método translate() en Python en el editor

Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.

Ejercicio: Usar print()

A continuación, te proporciono una lección detallada sobre el método translate() en Python.

Ejemplo

    table = str.maketrans('aeiou', '12345')

str.translate(table)
print(table)
str.translate(table)
print(table)
  
Abrir en editor

Ejercicio: También puedes usar

También puedes usar translate() para eliminar caracteres de una cadena especificando None como el mapeo en la tabla de traducción.

Ejemplo

    # Crear una tabla de traducción para eliminar caracteres
translation_table = str.maketrans('', '', 'aeiou')

# Usar translate() para eliminar las vocales
texto_original = "hola mundo"
texto_modificado = texto_original.translate(translation_table)
print(texto_modificado)  # Resultado: "hll mnd"
  
Abrir en editor

Ejercicio: Crear un diccionario de traducción personalizado

También puedes utilizar un diccionario personalizado en lugar de una tabla de traducción creada con maketrans() . El diccionario debe mapear caracteres de entra.

Ejemplo

    # Crear un diccionario de traducción personalizado
translation_dict = {'h': 'H', 'o': 'O', 'l': 'L', 'a': 'A'}

# Usar translate() con el diccionario
texto_original = "hola"
texto_traducido = texto_original.translate(str.maketrans(translation_dict))
print(texto_traducido)  # Resultado: "HOLA"
  
Abrir en editor