5 usuarios conectados

Invertir letras en palabras. Ejercicio en Python

Comparte esto

 

Escribe una función en Python llamada normalizar_texto_es que tome una cadena de texto en español como entrada y devuelva una nueva cadena con todos los caracteres en minúsculas y sin acentos.



Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Invertir letras en palabras

📋 Copiar código

def invertir_letras_palabras(texto):
  """
  Invierte las letras de cada palabra en una cadena de texto,
  manteniendo el orden de las palabras.

  Args:
    texto: La cadena de texto de entrada en español.

  Returns:
    Una nueva cadena con las letras de cada palabra invertidas.
  """
  palabras = texto.split()
  palabras_invertidas = [palabra[::-1] for palabra in palabras]
  return " ".join(palabras_invertidas)

# Ejemplos de uso
texto1 = "Hola Mundo"
resultado1 = invertir_letras_palabras(texto1)
print(f"'{texto1}' con letras invertidas por palabra: '{resultado1}'")

texto2 = "Esta es una frase."
resultado2 = invertir_letras_palabras(texto2)
print(f"'{texto2}' con letras invertidas por palabra: '{resultado2}'")

texto3 = "Palabra con acento: árbol"
resultado3 = invertir_letras_palabras(texto3)
print(f"'{texto3}' con letras invertidas por palabra: '{resultado3}'")

texto4 = "Texto con múltiples   espacios."
resultado4 = invertir_letras_palabras(texto4)
print(f"'{texto4}' con letras invertidas por palabra: '{resultado4}'")

texto5 = ""
resultado5 = invertir_letras_palabras(texto5)
print(f"'{texto5}' con letras invertidas por palabra: '{resultado5}'")

texto6 = "Unión Europea"
resultado6 = invertir_letras_palabras(texto6)
print(f"'{texto6}' con letras invertidas por palabra: '{resultado6}'")


Explicación del Código:

  1. Función invertir_letras_palabras(texto):
    • palabras = texto.split(): Divide la cadena de entrada texto en una lista de palabras, utilizando los espacios en blanco como delimitadores.
    • palabras_invertidas = [palabra[::-1] for palabra in palabras]: Utiliza una comprensión de lista para crear una nueva lista llamada palabras_invertidas. Para cada palabra en la lista original, se invierten sus letras utilizando el slicing con un paso de -1 ([::-1]).
    • return " ".join(palabras_invertidas): Une las palabras de la lista palabras_invertidas en una nueva cadena, utilizando un espacio en blanco como separador entre las palabras. Esto mantiene el orden original de las palabras, pero con las letras de cada palabra invertidas.

Ejemplos de Uso:

Los ejemplos muestran cómo la función invierte las letras de cada palabra en diferentes frases en español. Se incluyen casos con palabras acentuadas y frases con múltiples espacios entre las palabras (que split() maneja correctamente).