Ejercicio 04 — Dado un texto con espacios sobrantes al borde, devuelvelo en formato…

Dificultad: amarillo · Módulo 06 (Cadenas)

Enunciado

Dado un texto con espacios sobrantes al borde, devuelvelo en formato Titulo limpio

Cómo se resuelve

Limpiar un texto y ponerlo en formato título muestra cómo se encadenan los métodos de cadena, apoyándose en que cada uno devuelve una copia nueva.

  1. texto.strip() — quita los espacios (y saltos de línea) que sobran al principio y al final. No toca los espacios internos entre palabras, solo los de los bordes.
  2. .title() — sobre el resultado anterior, pone en mayúscula la primera letra de cada palabra y el resto en minúscula.
  3. texto.strip().title() — el encadenamiento funciona porque .strip() devuelve una cadena nueva y sobre ESA se llama .title(). Cada método opera sobre la copia que le entrega el anterior; la variable texto original nunca cambia, porque las cadenas son inmutables.
  4. Guardamos todo en resultado y lo imprimimos.

Trampa habitual: creer que texto.strip() modifica texto. No lo hace: devuelve una copia limpia, y si no la asignas a nada se pierde. Por eso el patrón es resultado = texto.strip().title() y no llamar a los métodos “a lo suelto” esperando que muten la variable.

Para practicar — cópialo y complétalo

Pega este esqueleto y completa los TODO. Es la mejor forma de aprender: inténtalo antes de mirar la solución.

# Curso de Python — Modulo 06: Cadenas: transformar y formatear
# Ejercicio 04 — PRACTICA (rellena los TODO)
# Enunciado: Dado un texto con espacios sobrantes al borde, devuelvelo en formato Titulo limpio
# Dificultad: amarillo
# Ejecutar: python3 ej04_practica.py
 
texto = input("Introduce un texto: ")
 
# TODO: usa .strip() para quitar espacios al borde y .title() para el formato titulo
#       puedes encadenarlos: texto.strip().title()
resultado = ""
 
# TODO: imprime el resultado
print()

Solución — cópiala y ejecútala

# Curso de Python — Modulo 06: Cadenas: transformar y formatear
# Ejercicio 04 — MODELO (resuelto)
# Enunciado: Dado un texto con espacios sobrantes al borde, devuelvelo en formato Titulo limpio
# Dificultad: amarillo
# Ejecutar: python3 ej04_modelo.py
 
texto = input("Introduce un texto: ")
 
# .strip() quita los espacios del principio y del final
# .title() pone en mayuscula la primera letra de cada palabra
# Encadenamos porque cada metodo devuelve un string nuevo
resultado = texto.strip().title()
 
print(resultado)

Cómo usarlo

Pega el código en un fichero y ejecútalo con tu toolchain habitual (o el botón de Ejecutar de tu editor). Antes de mirar la solución, intenta completar tú el esqueleto: es la mejor forma de aprender.

Conexiones