Crear una lista vacía con un tamaño dado en Python

En este post, veremos cómo crear una lista vacía con un tamaño dado en Python.

Para poder asignar cualquier valor a una lista utilizando el operador de asignación en la posición i, a = x, el tamaño de la lista debe ser al menos i+1. De lo contrario, levantará un IndexError como se muestra a continuación:

1

.

2
3

.

4
5

a =
a = 1
print(a)
# raise IndexError: list assignment index out of range

La solución es crear una lista vacía de None cuando los elementos de la lista no se conocen de antemano. Esto se puede hacer fácilmente como se muestra a continuación –

1
2
3
4

a = * 5
print(a)
# prints

El código anterior creará una lista de tamaño 5, donde cada posición es inicializada por NoneNone se utiliza frecuentemente en python para representar la ausencia de un valor.

Otra alternativa para crear listas vacías con un tamaño determinado es utilizar comprensiones de listas:

1
2
3
4

a =
print(a)
# prints , , , ,

¿Qué solución utilizar?

La primera solución funciona bien para tipos no referenciados como los números. Pero puedes encontrarte con errores de referenciación en algunos casos. Por ejemplo, ] * 5 hará que la lista contenga el mismo objeto de lista repetido 5 veces.

1
2
3
4
5

a = ] * 5
a.append(1)
print(a)
# imprime , , , , ]

La solución a este problema es utilizar comprensiones de lista como esta:

1
2
3
4
5

a = for x in range(5)]
a.append(1)
print(a)
# prints , , , ]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *