Come installare e usare moduli Python

Quando creiamo software con il linguaggio Python, usiamo le istruzioni di base del linguaggio, che sono tante, ma non sufficienti per i nostri compiti.

Ci potrebbe ad esempio essere utile creare una finestra grafica, oppure gestire date ed orari, o ancora creare file compressi in formato ZIP, e tanto altro ancora.

Per tutte queste necessità, Python ci mette a disposizione i suoi moduli, che non sono altro che istruzioni aggiuntive al linguaggio di base di Python. Lo so, la spiegazione non è tecnicamente corretta, ma sicuramente rende meglio l’idea delle utilità dei moduli.

Facciamo un esempio pratico per capire meglio come ci possono essere utili i moduli.

Ipotizziamo che vogliamo integrare nel nostro programma, la possibilità di visualizzare il calendario di un determinato mese di un determinato anno specifico.

Con le istruzioni che conosciamo del linguaggio Python, questo è per noi impossibile. Ecco allora che possiamo usare uno dei tanti moduli esistenti che ci permetteranno di ottenere questo tipo di calendario.

Il modulo che ci interessa è il modulo calendar.



Lo so, se siete da soli e non sapete l’esistenza di questo modulo, vi blocchereste sicuramente, ma dovete sapere che esiste l’elenco dei moduli Python principali (ne esistono però anche altri di altri programmatori), in questa pagina dedicata ai moduli per Python versione 3: https://docs.python.org/3/library/

Elenco moduli Python

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Qui potete cercare e trovare sicuramente quello più adatto alle vostre esigenze. Esistono moduli per date e orari, per calcoli finanziari, per calcoli geometrici e matematici, e tanto altro ancora.

Come potete vedere nella figura sopra, ho evidenziato il modulo calendar che andremo ad usare. Anzi, premiamo su calendar per vedere tutte le sue istruzioni utilizzabili, cioè tutte le istruzioni presenti in questo modulo.

Apparirà la seguente pagina:

Modulo calendar di Python

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Come potete notare dalla figura sopra, troviamo il manuale d’uso del modulo calendar. Chiaramente è tutto in lingua inglese, trattandosi della guida ufficiale sul linguaggio Python, ma su Internet potete trovare altri utenti che spiegano, anche in italiano, i vari moduli presenti.

Nella figura sopra, ho anche evidenziato, solo come esempio, una delle istruzioni, e la sua relativa spiegazione di come funziona.

Se facciamo scorrere la pagina, troveremo l’istruzione che cercavamo noi, cioè quella che ci permette di far scrivere il calendario di un determinato mese ed anno.

Nella figura qui sotto vi evidenzio l’istruzione che cercavamo:

 

 

 

 

 

 

 

 

 

L’istruzione è prmonth e come vedete si aspetta, in particolare, due dati, che sono “theyear” e “themonth”. Intanto dobbiamo sapere che l’istruzione prmonth, non è altro che la congiunzione tra le parole printmonth, ovvero print (stampa) e month (mese), quindi significa “stampa mese”. I due dati che ci chiede sono “theyear”, cioè “the year”, ovvero “l’anno” e “themonth”, ovvero “th month”, cioè “il mese”.

Bene, abbiamo trovato il modulo e abbiamo capito qual’è l’istruzione che ci interessa. Ma come si fa ad usarla nei nostri programmi Python?




Per poter usare un modulo, dobbiamo importarlo. Apriamo l’IDLE di Python 3.

 

 

 

 

 

 

Per poter usare l’istruzione prmonth del modulo calendar, dobbiamo necessariamente importare il modulo. ATTENZIONE: va importato il modulo, non l’istruzione.

Scriviamo quindi: import calendar

 

 

 

 

 

Dopo che avremo premuto sul tasto INVIO della tastiera, apparentemente non succederà nulla, ma in realtà tutte le istruzioni del modulo calendar possono ora essere utilizzate con Python.

Proviamo subito l’istruzione. Per usare l’istruzione prmonth, dobbiamo prima di tutto anteporre (cioè mettere prima), il nome del modulo, ovvero calendar, quindi separato da un punto, scriveremo il nome dell’istruzione, che nel nostro caso è prmonth, e i dati richiesti, ovvero “anno” e “mese”. Ipotizziamo che noi vogliamo che venga stampato il mese di maggio del 1987.

Scriveremo la seguente istruzione:

calendar.prmonth(1987,5)

in quanto l’anno è il 1987 e il mese di maggio è il 5.

 

 

 

 

 

 

Come potete notare dalla figura sopra, viene stampato il mese completo di maggio 1987.

Ma vediamo subito una utile variante. Quando abbiamo importato il modulo calendar, abbiamo scritto import calendar, che è corretto, ma questo modo ci impone di scrivere sempre il nome del modulo con le istruzioni di quel modulo. Infatti abbiamo dovuto scrivere:

calendar.prmonth(1987,5)

Ma se vogliamo, possiamo importare tutte le istruzioni del modulo in questa maniera:

from calendar import *

che significa: “dal modulo calendar importa tutto”, cioè tutte le istruzioni del modulo. Ma cosa cambia facendo così?

Importando le istruzioni in questo modo, non avremo più bisogno di anteporre il nome del modulo, ma potremo utilizzare l’istruzione così com’è.

Chiudete l’IDLE Python e riapritelo, in modo da ripartire da zero.

Importiamo ora il modulo calendar con questa nuova modalità:

 

 

 

 

 

 

Bene. Ora possiamo usare l’istruzione prmonth senza anteporre il nome del modulo. Proviamo:

 

 

 

 

 

 

Questa è una spiegazione riassuntiva e semplice dei moduli. Chiaramente i moduli hanno altre caratteristiche più complesse che esulano da questo articolo.