Creare una lista vuota con dimensioni date in Python

In questo post, vedremo come creare una lista vuota con dimensioni date in Python.

Per assegnare qualsiasi valore ad una lista usando l’operatore di assegnazione alla posizione i, a = x, la dimensione della lista dovrebbe essere almeno i+1. Altrimenti, solleverà un IndexError come mostrato di seguito:

1
2
3
4
5

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

La soluzione è quella di creare una lista vuota di None quando gli elementi della lista non sono noti in anticipo. Questo può essere fatto facilmente come mostrato di seguito –

1
2
3
4

a = * 5
print(a)
# stampa

Il codice precedente creerà una lista di dimensioni 5, dove ogni posizione è inizializzata da NoneNone è spesso usato in python per rappresentare l’assenza di un valore.

Un’altra alternativa per creare liste vuote con una data dimensione è quella di usare le list comprehension:

1
2
3
4

a =
print(a)
# stampa , , , , ]

Quale soluzione usare?

La prima soluzione funziona bene per tipi non referenziati come i numeri. Ma potresti incorrere in errori di riferimento in alcuni casi. Per esempio, ] * 5 risulterà nella lista contenente lo stesso oggetto lista ripetuto 5 volte.

1
2
3
4
5

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

La soluzione a questo problema è usare la comprensione di liste come questa:

1
2
3
4
5

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

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *