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


Programmare con Python

11 - Altri operatori


La ragione ha sempre almeno un cliente: scontento
Anonimo, Secolo Ventunesimo

Nella nostra in fondo poco impegnativa passeggiata all'interno del linguaggio di programmazione Python, abbiamo volutamente evitato di stringere amicizia con alcuni operatori. Ora è giunto il momento di conoscerli più da vicino.

Affetta, affetta

Nelle scorse lezioni abbiamo veduto all'opera le liste e le tuple. Sia le une che le altre hanno la particolarità di supportare alcuni tipi di operatori, come sappiamo. Cioé il concatenamento (+), la ripetizione (*), o ancora la lunghezza (len).
Ve ne è un altro che risponde al nome di 'affettamento' (o slicing, in inglese). Ne avevamo accennato (senza ahimé affrontarlo), nella nostra lezione dedicata alle liste.
L'affettamento è supportato sia dalle stringhe che dalle liste, sia dalle tuple, ma non dai dizionari. In pratica, offre la possibilità di estrarre elementi o parti. Ma non solo estrarre: anche scartare elementi all'inizio o alla fine. Vediamo un simpatico esempio.



Tra le parentesi quadre abbiamo indicato sia l'indice di partenza che quello finale, separati da : (sì, i due punti). Come si può facilmente capire dal nostro esempio, l'estrazione prende avvio dalla prima lettera indicata dall'indice iniziale incluso, sino all'indice finale escluso. Ovviamente, si parte sempre da zero!
Nell'esempio, a Python viene indicato di estrarre il primo elemento (cioé [0]), poi quelli seguenti, per arrestarsi infine alla soglia del sesto (vale a dire all'indice [5]).
Non solo: l'affettamento permette ulteriori libertà. Un esempio: è possibile indicare un numero negativo nell'indice finale. In questa maniera il nostro discreto rettile provvederà a contare a ritroso. Voilà l'esempio:



Qui Python ha un indice negativo (-5), ed estrae tutti gli elementi iniziando a contare però dalla fine, cioé da destra. Quindi si escludono gli ultimi: infatti la sillaba 'e' corrisponde a -1, la 't' a -2, e così via.
Bene. Se poi decidiamo di non mettere uno dei due indici, Python non sarà così fiscale dal fermarsi.



Qui sopra Python estrae gli elementi dallo 0 (zero), cioé la 'a', sino al 5 (escluso). Perciò avremo 'amare'.



In questo caso avviene l'estrazione di tutti gli elementi, tranne però i primi.

L'operatore %

Ebbene sì: c'è almeno un altro operatore che merita di essere conosciuto, cioé %. Questo, permette la formattazione delle stringhe. In pratica, rappresenta un buon metodo per effettuare la sostituzione di valori con quelli racchiusi all'interno di una variabile. Cosa diavolo sto dicendo? Un esempio come al solito aiuterà a capire ogni cosa.



Nell'esempio qui sopra, per prima cosa ho creato una variabile chiamata 'saluto'. Poi, nella nostra stringa ho inserito l'operatore %s (dedicato espressamente alle stringhe), che sarà sostituito dal valore espresso dalla nostra simpatica variabile.
Prima ho scritto che l'operatore %s è dedicato alle stringhe; ve ne sono infatti altri, come %d, usato invece per i numeri decimali. Secondo voi a questo punto cosa accadrà? Esatto: un altro esempio.



A questo punto non credo ci sia molto da spiegare, ma lo farò lo stesso. Due variabili questa volta, che rispondono al nome di 'Nome' e 'anni'. Si tratta di una stringa e un numero. L'operatore %s viene sostituito con il valore della variabile 'Nome', mentre quello %d con 'Anni'. Le parentesi sono necessarie quando c'è da inserire più di un valore. In questo modo si crea in realtà una tupla.

Lezione successiva

Data di pubblicazione: 20-10-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.