In questa quarta parte del corso online dedicato a python, studieremo in tutto e per tutto, le liste! In Python una lista è una collezione di elementi ordinata e dinamica.

Gli elementi della collezione non sono necessariamente dello stesso tipo, ciò significa che all'interno di essa potremmo avere delle stringhe, degli interi, degli oggetti, o addirittura altre liste annidate.

Sintassi

Per creare una lista ci basterà inserire i valori che vogliamo all'interno delle parentesi quadre []:

>>> mia_lista = ["ciao", 10, True, 21, "ananas"]

Come detto in precedenza, in questo caso, abbiamo un insieme di elementi di diverso tipo tra loro, ovvero una stringa, un intero e un valore booleano.

Accedere ad un singolo elemento della lista

Per accedere agli elementi della lista dobbiamo dichiarare il nome della lista con l'indice tra le parentesi quadre:

>>> mia_lista[0]
"ciao"
>>> mia_lista[1]
10
>>> mia_lista[2]
True

Nota bene: l'indice parte da 0, non da 1, quindi per ottenere il primo elemento della lista dovremmo indicare [0].

>>> mia_lista[-1]
"ananas"
>>> mia_lista[-3]
True

Come hai notato è possibile fornire pure degli indici negativi, in questo caso la conta avverrà al contrario. Difatti indicando [-1] otterremo l'ultimo elemento della lista, [-3] il terzultimo e così via.

Accedere a più elementi per volta

Nel caso volessimo ottenere più elementi per volta, possiamo effettuare uno slice (fetta) della lista indicando un intervallo di indici:

>>> mia_lista[2:4]
[True, 21]

Così facendo otteniamo una nuova lista con il e il 4 elemento della lista precedente.(ricorda sempre che l'indice parte da 0, perciò per ottenere il terzo elemento ho inserito come indice 2) .

Aggiungere elementi in una lista

Per aggiungere elementi alla fine di una lista possiamo utilizzare la funzione built-in append(). In questo modo puoi aggiungere un solo elemento per volta, oppure di più utilizzando il metodo extend().

lista = [1, 2, 3, 4]
print(lista)

lista.append(5)
lista.append(6)
print(lista)

lista.extend([7, 8, 9, "a"])
print(lista)

#output 1
[1, 2, 3, 4]
#output 2
[1, 2, 3, 4, 5, 6]
#output 3
[1, 2, 3, 4, 5, 6, 7, 8, 9, "a"]

Il metodo append() è principalmente utilizzato nei loop. Mettiamo ad esempio che vogliamo una lista dei soli numeri pari in un intervallo da 0 a 20:

numeri_pari = []
for numero in range(21):
if(numero % 2 == 0):
numeri_pari.append(numero)

print(numeri_pari)
#output
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

Un altro modo per aggiungere elementi è utilizzando insert(). Con questa funzione possiamo indicare la posizione in cui l'elemento sarà inserito.

lista_numeri = [44, 22, 13, 39]
print(lista_numeri)

lista_numeri.insert(1, 100)
print(lista_numeri)

#output 1
[44, 22, 13, 39]
#output 2
[44, 100, 22, 13, 39]

Rimuovere elementi da una lista

In Python è possibile eliminare elementi da una lista utilizzando il metodo built-in remove().

Con remove() è possibile togliere un elemento per volta passandogli come parametro il valore dell'elemento che vogliamo rimuovere; Mentre con pop() è possibile rimuovere sempre un elemento per volta, ma passando come parametro l'indice. Di default, chiamando il metodo pop() senza parametri, verrà rimosso l'ultimo elemento della lista.

Ricorda: il metodo remove() toglie solo la prima occorrenza dell'elemento specificato.

lista = ["banana", "mela", "banana", "ananas", "pera"]
print(lista)

lista.remove("banana")
print(lista)

lista.pop()
print(lista)

lista.pop(2)
print(lista)

#output 1
["banana", "mela", "banana", "ananas", "pera"]
#output 2
["mela", "banana", "ananas", "pera"]
#output 3
["mela", "banana", "ananas"]
#output 4
["mela", "banana"]

Condividi sui Social