Comprensiones de listas anidadas
¡Estupendo! En este punto, dominas la sintaxis básica de las comprensiones de listas. Mejoremos un poco más tus competencias de escritura de código. En este ejercicio, escribirás una comprensión de listas dentro de otra comprensión de listas: son las comprensiones de listas anidadas. Parece un poco complicado, pero puedes hacerlo.
Apartémonos un rato de las cadenas. Una de las formas en las que se pueden utilizar las listas es la representación de objetos multidimensionales como las matrices. Las matrices pueden representarse como una lista de listas en Python. Por ejemplo, una matriz de 5 × 5 con valores de 0
a 4
en cada fila puede escribirse como:
matrix = [[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4]]
Tu tarea consiste en crear de nuevo esta matriz utilizando comprensiones de listas anidadas. Recuerda que puedes crear una de las filas de la matriz con una sola comprensión de listas. Para crear la lista de listas, solo tienes que proporcionar la comprensión de listas como expresión de salida de la comprensión de listas general:
[
[expresión de salida] for
variable de iterador in
iterable]
Observa que aquí la expresión de salida es en sí una comprensión de listas.
Este ejercicio forma parte del curso
Caja de herramientas Python
Instrucciones de ejercicio
- En la comprensión de listas interior (es decir, la expresión de salida de la comprensión de listas anidada), crea una lista de valores de
0
a4
utilizandorange()
. Utilizacol
como variable de iterador. - En la parte iterable de tu comprensión de listas anidada, utiliza
range()
para contar 5 filas: es decir, crea una lista de valores de0
a4
. Utilizarow
como variable de iterador; ten en cuenta que no necesitarás esta variable para crear valores en la lista de listas.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Create a 5 x 5 matrix using a list of lists: matrix
matrix = [[____] ____]
# Print the matrix
for row in matrix:
print(row)