Ejercicio 03 — Pide una lista de palabras separadas por espacio e imprimela al reves

Dificultad: verde · Módulo 05 (Listas y comprehensions)

Enunciado

Pide una lista de palabras separadas por espacio e imprimela al reves

Cómo se resuelve

Invertir una lista de palabras es la excusa perfecta para ver el slicing con paso negativo, un atajo que en C exigiría un bucle que intercambia extremos.

  1. entrada.split() — parte la línea tecleada en una lista de palabras: "hola que tal" se vuelve ["hola", "que", "tal"]. Sin argumentos, .split() trocea por cualquier espacio en blanco.
  2. palabras[::-1] — esta es la clave. El slicing tiene la forma [inicio:fin:paso]; al dejar inicio y fin vacíos y poner paso -1, Python recorre la lista de atrás hacia adelante y devuelve una lista nueva invertida.
  3. Es importante que crea una copia: la lista original palabras queda intacta. Si en cambio quisieras invertir la lista en su sitio, usarías el método palabras.reverse(), que no devuelve nada y modifica la original.
  4. print(invertida) — al imprimir una lista tal cual, Python muestra los corchetes y las comillas de cada string; no es texto seguido sino la representación de la lista.

Trampa habitual: confundir [::-1] (invierte) con [-1] (que es solo el último elemento). Un cambio de un carácter y el resultado es completamente distinto.

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 05: Listas y comprehensions
# Ejercicio 03 — PRACTICA (rellena los TODO)
# Enunciado: Pide una lista de palabras separadas por espacio e imprimela al reves
# Dificultad: verde
# Ejecutar: python3 ej03_practica.py
 
entrada = input("Introduce palabras separadas por espacio: ")
 
# TODO: convierte 'entrada' en una lista de palabras con split()
palabras = []
 
# TODO: invierte la lista usando slicing [::-1]
invertida = []
 
# TODO: imprime la lista invertida
print()

Solución — cópiala y ejecútala

# Curso de Python — Modulo 05: Listas y comprehensions
# Ejercicio 03 — MODELO (resuelto)
# Enunciado: Pide una lista de palabras separadas por espacio e imprimela al reves
# Dificultad: verde
# Ejecutar: python3 ej03_modelo.py
 
entrada = input("Introduce palabras separadas por espacio: ")
 
# split() sin argumentos parte por cualquier espacio en blanco
palabras = entrada.split()
 
# Slicing [::-1] crea una nueva lista invertida — no modifica la original
invertida = palabras[::-1]
 
print(invertida)

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