Python Quiz 1 – Asignación de Slicing en listas en Python
Pregunta principal del pyquiz:
>>> lst = ['h', 34, 2.3]
>>> lst[2:5] = ['pepe']
>>> print(lst)
- ?? -
# A - AttributeError
# B - ['h', 34, 'pepe']
# C - ['h', 34, 2.3]
Concepto y explicación
En esta pregunta se hace una asignación de una lista sobre una sublista inicial (slicing)
La sublista comprende sólo el elemento 2.3:
>>> lst = ['h', 34, 2.3]
>>> lst[2:5]
[2.3]
>>> lst[5]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
Conceptos aplicados:
- La sublista comprendida entre los elementos 2 y 5 es solo
[2.3]. - Python soporta que los índices estén fuera del rango permitido. Aunque haya solo 3 elementos, se puede intentar acceder a un rango superior de 3 cuando se hace slicing.
- Si se intenta acceder al elemento 5, provoca un error dado que sólo hay 3 elementos en la lista.
Dado que el único elemento del slicing es 2.3, se le asigna a la lista que lo envuelve la lista ['pepe'], quedando como resultado el siguiente:
>>> lst[2:5]
[2.3]
>>> lst[2:5] = ['pepe']
>>> lst
['h', 34, 'pepe']
Solución
Por tanto la solución correcta es la B, en dado que el elemento 3 ([2.3]) es reemplazado por la lista ['pepe'].
B) [‘h’, 34, ‘pepe’]
Practica Python con PyQuizzes
En la sección de PyQuizzes puedes encontrar ejercicios prácticos explicados pormenorizado para mejorar tus habilidades como pythonista. ¡No te los pierdas!
📥 Llévate el cheatsheet de Python (gratis)
PDF de 6 páginas con lo esencial: tipos, condicionales, bucles, estructuras de datos, funciones y los errores que más vas a cometer. Para tener al lado mientras programas.
Sin spam. Te apuntas a la lista, descargas el cheatsheet y recibes contenido de Python cada semana.
Tutorial Python online
Aprender Python de forma gratuita siguiendo las secciones del tutorial de Python.
Libros recomendados para aprender Python
Estos son los libros que pueden ayudarte a aprender Python, aprender a programar, tipos de datos, algoritmia y mucho más.
¿Quieres aprender Python en orden, no a saltos?
Esto que has leído es solo una pieza. En El Pythonista lo verás todo encadenado: 11 módulos, 35+ lecciones, código revisado, ejercicios y un proyecto real (MovieTracker) que crece contigo desde la primera variable hasta el deploy a producción.
35+ lecciones · Proyecto real · Acceso de por vida · 14 días de garantía














