Le Liste in Python
Obiettivi della pillola
Alla fine di questa pillola saprai:
- inizializzare liste (
[],list()), - aggiungere/integrare elementi (
append,insert,extend), - rimuovere elementi (
remove,pop,clear), - scorrere e stampare i valori con cicli
for.
Cos’è una lista
Una lista è una collezione ordinata e mutabile di elementi racchiusi tra [ ]. Può contenere numeri, stringhe o altre liste.
numeri = [1, 2, 3, 4, 5]
parole = ["ciao", "mondo", "python"]
mista = [1, "testo", True, 3.14]
Inizializzazione di una lista
Puoi creare una lista vuota o già popolata.
vuota = []
altra_lista = list() # equivalente
voti = [6, 7, 8, 9, 10] # lista gia' piena
Aggiungere elementi
Metodi principali per inserire nuovi valori.
append() — in fondo alla lista
voti = [6, 7, 8]
voti.append(9)
print(voti) # [6, 7, 8, 9]
insert(pos, elem) — in una posizione specifica
voti = [6, 7, 8, 9]
voti.insert(1, 5) # inserisce 5 all'indice 1
print(voti) # [6, 5, 7, 8, 9]
extend(iterabile) — aggiungere più elementi
voti = [6, 5, 7]
voti.extend([8, 9, 4, 3])
print(voti) # [6, 5, 7, 8, 9, 4, 3]
Rimuovere elementi
remove(valore) — rimuove la prima occorrenza
voti = [6, 5, 7, 8, 9, 4, 3]
voti.remove(5)
print(voti) # [6, 7, 8, 9, 4, 3]
pop([indice]) — rimuove e restituisce
voti = [6, 7, 8, 9, 4]
ultimo = voti.pop() # senza indice: toglie l'ultimo
print(ultimo) # 4
print(voti) # [6, 7, 8, 9]
clear() — svuota la lista
voti = [6, 7]
voti.clear()
print(voti) # []
Scorrere e leggere gli elementi
For “diretto” sugli elementi
voti = [6, 7, 8, 9, 10]
for voto in voti:
print(voto)
For con indice
voti = [6, 7, 8, 9, 10]
for i in range(len(voti)):
print(f"Elemento {i} = {voti[i]}")
Nota: Gli indici partono da 0. L’ultimo elemento si trova a
len(lista)-1.
Esempio completo
Programma che crea una lista, inserisce e rimuove elementi, e poi li stampa.
numeri = []
# aggiungo elementi
numeri.append(10)
numeri.append(20)
numeri.insert(1, 15) # inserisco in mezzo
print("Lista dopo inserimenti:", numeri)
# tolgo l'ultimo
numeri.pop()
print("Lista dopo pop:", numeri)
# scorro la lista
print("Valori nella lista:")
for n in numeri:
print(n)
Output atteso:
Lista dopo inserimenti: [10, 15, 20]
Lista dopo pop: [10, 15]
Valori nella lista:
10
15
Riepilogo
- Creazione:
[],list() - Aggiunta:
append,insert,extend - Rimozione:
remove,pop,clear - Lettura: cicli
forper elementi e per indici
EC