Percorso: ilMac.net > Scuola di Mac > Corsi > Programmare con Python


Programmare con Python

8 - Le liste


Niente ha bisogno di essere cambiato quanto le abitudini altrui
Mark Twain

Immaginiamo di avere uno strumento potente e flessibile, capace di gestire in modo disinvolto stringhe e numeri. Che sia anche così semplice da usare, da poter assumere al proprio interno diversi valori contemporaneamente (a differenza delle variabili). Tutto questo in Python esiste, e si tratta delle liste, che ora andremo a conoscere più da vicino.

Liste


Definiamo la lista: si tratta di un insieme ordinato di oggetti. Cosa sono gli oggetti? I numeri, le stringhe, ma anche altre liste: ecco cosa sono gli oggetti. In un certo senso, le liste possono essere definite quasi come delle variabili, poiché contengono diversi tipi di oggetti. Tra le loro numerose caratteristiche (che tra poco vedremo all'opera), dobbiamo segnalare il fatto che è possibile estrarre dal loro interno qualunque oggetto che vi è racchiuso, tramite un indice che ne indichi la posizione. Inoltre, la lista accetta funzioni come l'affettamento e la concatenazione (aspetti che tratteremo più avanti). Ma probabilmente ne avrete abbastanza di sentire questo genere di cose e vorrete vederle all'opera. Ecco allora un esempio di lista:



Premendo come al solito il pulsante 'Run', avremo come risultato 'Linus Torvalds'. Non è che Python stia dando i numeri. Occorre ricordare infatti che ogni lista comincia sempre con l'elemento 0 (zero), da sinistra verso destra. Che qui è Steve Jobs, mentre Linus Torvalds corrisponde appunto al 2.
Una lista può accogliere al suo interno (e lo abbiamo detto in precedenza), elementi eterogenei: cioé numeri e stringhe.



Eseguendo il programma avremo come risultato proprio 2001. Adesso facciamo però un po' di chiarezza prima di procedere. Il sistema per creare una lista è usare le parentesi quadrate; al loro interno troveranno posto gli elementi che desideriamo, separati da virgole. Che possono essere (lo abbiamo appena visto), numeri, numeri a virgola mobile (3.0 per esempio), stringhe; ma anche altre liste!



Quando una lista si trova all'interno di un'altra lista si parla di lista annidata. Abbiamo in principio di questa lezione accennato alla flessibilità delle liste. Utilizzando la funzione len (), possiamo conoscere la lunghezza di una lista.



Il risultato sarà quattro, perché quattro sono gli elementi contenuti. Desideriamo mettere in ordine alfabetico la nostra lista? Usiamo la funzione sort().



Viceversa sarà sufficiente rivolgersi alla funzione reverse() per ordinare la lista alla rovescia.



Vogliamo aggiungere qualcosa? Allora sarà la funzione append () a venirci in aiuto.



Per eliminare un elemento, basta usare del [ ].



Se desideriamo individuare un certo elemento nella nostra lista, useremo index ().



Superfluo affermare che le liste supportano gli operatori + e *; quindi è possibile concatenare due liste (la seconda verrà quindi accodata alla prima), oppure si può (tramite appunto *), far sì che una lista venga ripetuta.



La lista vuota si crea con le parentesi quadre [].

Ricapitolando

Le liste sono uno strumento importante in Python; sono mutabili, quindi gli elementi possono essere modificati. Accolgono ogni genere di elemento (numeri, stringhe e altre liste), e ad essi si accede tramite un indice. Ma diamo un'occhiata a questo nuovo esempio:



Nome è una lista che raggruppa al suo interno delle stringhe (i nomi degli Stati), separati da una virgola. Il segno '' permette di andare a capo quando il codice è troppo lungo. Le parentesi quadre contengono la lista. Ma come funziona questo programmino?
La prima riga non ha necessità di troppe spiegazioni: serve per far apparire una finestra in cui l'utente dovrà inserire un numero. Questo numero verrà poi associato al nome della Nazione. 'Nome' non è che una grossa variabile. Dopo di essa abbiamo l'istruzione if (che presto affronteremo), che di fatto dice: verifica la veridicità di questa istruzione e quindi restituisci quel certo valore corrispondente. E così farà, fino a quando inseriremo un numero tra 0 e 10. Se inseriamo 7 per esempio, ci verrà restituito 'Danimarca', e così via.

Lezione successiva

Data di pubblicazione: 29-09-2005

L'intero contenuto di questo sito è © dal 1998 del Team di ilMac.net, è vietata ogni riproduzione senza il consenso scritto da parte degli autori.