Torna al blog

Scrivere moduli in Python 3: un tutorial

Scrivere moduli in Python 3: un tutorial

Introduzione

Python è uno dei linguaggi di programmazione più comunemente usati in tutto il mondo. I moduli sono una parte fondamentale del codice Python. Un modulo è semplicemente un .py file nel contesto di Python 3. Questo significa che puoi fare riferimento a qualsiasi file Python come a un modulo.

È possibile ottenere questi moduli tramite la libreria predefinita. Puoi dare un'occhiata alla Python Standard Library per saperne di più. Questi vengono installati sul tuo sistema quando installi Python. In altre situazioni, puoi installare questi moduli usando il gestore di pacchetti di Python pip. Ma cosa succede se vuoi creare un modulo personalizzato? Se questo è il caso, allora sarai felice di sapere che puoi creare i tuoi moduli in Python.

In questa guida dettagliata, ti mostreremo i passaggi da seguire per scrivere e importare moduli in Python 3.

Prerequisiti

Prima di iniziare, dovrai assicurarti di avere Python 3 installato e un ambiente di programmazione configurato. Puoi seguire il nostro tutorial sull'installazione di Python 3 e sulla configurazione di un ambiente di programmazione locale su Ubuntu 16.04 per completare l'installazione nel caso in cui tu non l'abbia ancora pronta.

Come scrivere un modulo?

Cominciamo con la scrittura di un modulo. Scriveresti un modulo proprio come faresti per qualsiasi altro file Python. Un modulo tipico comprende le definizioni di funzioni, classi e variabili. Successivamente, puoi utilizzare il modulo per applicarlo ad altri programmi Python.

Per aiutarti a capire, consideriamo un esempio. Diciamo che vogliamo creare un file chiamato hello.py. Più tardi importeremo anche questo in un altro file. Il primo passo nel processo è creare una funzione. Questa funzione servirà a stampare Hello, World! in questo modo:

A questo punto, l'esecuzione del comando python hello.py non ti darà alcun risultato. Questo perché non abbiamo ancora fornito alcuna istruzione al programma. Per farlo funzionare, dobbiamo importare il modulo.

Come importare un modulo?

Al fine di importare il tuo modulo per renderlo una funzione, devi creare un secondo file nella stessa directory. Chiameremo questo nuovo file main_program.py. Il motivo per cui entrambi i file devono trovarsi nella stessa directory è che dobbiamo guidare il programma su dove trovare il modulo. Questo è applicabile a qualsiasi nuovo modulo personalizzato che non sia integrato:

Abbiamo usato la notazione con il punto per il nome del modulo per chiamare la funzione. Un altro modo per farlo è usare il metodo from...import. Qui, chiameremo la funzione come world() importando il modulo come from hello import world. Infine, puoi eseguire il comando:

Il comando ti mostrerà il seguente output:

Aggiungere variabili a un modulo

Successivamente, vedremo come aggiungere variabili al modulo inserendo le definizioni nel modulo:

Successivamente, chiamerai la variabile nella funzione print(). La chiameremo all'interno del file main_program.py :

L'esecuzione del programma mostrerà questo output:

Aggiungere una classe a un modulo

Infine, vedremo come puoi definire una classe nel tuo file per il modulo. Continuando il nostro esempio, creeremo una nuova classe chiamata Octopus nel file hello.py. Le assegneremo anche gli attributi di name e color. Quindi, aggiungeremo una funzione per renderla stampabile:

Successivamente, devi aggiungere la classe quasi alla fine del main_program.py file:

Puoi chiamare la classe con il comando hello.Octopus(). Ti mostrerà le funzioni e gli attributi della classe Octopus nel namespace del file. Pertanto, puoi scrivere jesse.tell_me_about_the_octopus() nell'ultima riga senza invocare hello. È anche possibile chiamare un singolo attributo della classe senza usare hello. Ad esempio, puoi semplicemente eseguire jesse.color. Quando esegui il programma, mostrerà il seguente output:

Implementazione del codice con i moduli

Laddove puoi usare i moduli per specificare le definizioni, puoi anche usarli per implementare il codice. Diciamo che vogliamo implementare la funzione world(). Riscriveremo il nostro file iniziale hello.py completamente:

Dal file main_program.py elimineremo tutto tranne l'istruzione di importazione, lasciando quanto segue:

L'esecuzione del file di programma principale ti fornirà questo output poiché il programma implementa ed esegue la funzione world() :

Come accedere a un modulo da un'altra directory?

Ora che sai come creare e modificare i moduli, devi sapere come accedervi da un'altra directory. Questo è utile quando hai bisogno di usare un determinato modulo in un altro progetto. Ci sono due modi per farlo, che spiegheremo di seguito.

  • Aggiunta di percorsi

Il primo metodo consiste nell'attivare il percorso del modulo utilizzando i file di programmazione che stanno già utilizzando il modulo. Sfortunatamente, ciò non significa che il modulo sarà disponibile su tutto il sistema. Pertanto, è considerata solo una soluzione temporanea. Viene spesso impiegata durante la fase di sviluppo del progetto.

Puoi avviare il processo di aggiunta importando il modulo sys e altri moduli importanti che devi utilizzare. Li importeremo nel file di programma principale. Puoi trovare il modulo sys nella libreria standard di Python. Ne hai bisogno perché contiene i parametri e le funzioni di base specifici per il tuo sistema.

Consideriamo ancora una volta il nostro esempio precedente. Diciamo che il file hello.py si trova sul percorso /usr/sammy/ e il file main_program.py si trova in un'altra directory. Importeremo prima il modulo hello nel file main_program.py utilizzando prima il modulo sys. Successivamente, aggiungeremo /usr/sammy/ al percorso:

Se imposti il percorso correttamente, il file main_program.py il file verrà eseguito facilmente senza errori. Riceverai lo stesso output di quando entrambi i file si trovavano nella stessa directory.

  • Python Path

L'altra opzione che puoi scegliere è il Python path. Qui, aggiungeresti il modulo stesso a un percorso in cui Python cerca moduli e pacchetti. Come puoi probabilmente dedurre, questo rende il modulo disponibile a livello di sistema, rendendolo una soluzione permanente praticabile.

Per fare questo, devi capire dove Python sta cercando i moduli. Dovrai eseguire l'interprete Python dall'ambiente di programmazione che si presenta così:

Il passo successivo consiste nell'importare il sys modulo:

Successivamente, stampa il percorso di sistema:

Ora vedrai un percorso di sistema come output. Ce ne sarà almeno uno. Tuttavia, potrebbero essercene diversi in un ambiente di programmazione. Nell'elenco, individua l'ambiente che stai utilizzando. Tieni presente che potresti voler aggiungere il modulo anche al percorso Python principale del sistema. Ecco come apparirà:

Infine, sposta il hello.py file in questa directory e importa il modulo come segue:

Il tentativo andrà a buon fine se il programma esegue il file senza produrre errori. Come risultato di questo processo, sarai in grado di accedere al modulo da qualsiasi directory del tuo sistema.

Conclusione

Lo scopo di questo tutorial era aiutarti a familiarizzare con la scrittura di moduli Python. È molto simile a come scriveresti qualsiasi file Python .py . Abbiamo prima parlato di cosa siano effettivamente un modulo Python e le relative funzionalità. Poi, abbiamo scoperto come applicare queste definizioni in altri file di programmazione in Python. Infine, abbiamo compreso i dettagli dell'accessibilità dei moduli. Ora sai come scrivere moduli in Python 3 e come accedervi.

Per approfondire ulteriormente  la tua conoscenza del linguaggio di programmazione Python, fai riferimento al nostro blog per altre risorse:

Buona programmazione!

author

Pranay Kapgate

Autore · CloudSigma

Preslav Dobrev è un designer creativo presso CloudSigma, con un focus su un'identità aziendale coerente attraverso l'uso di canali di marketing tradizionali e innovativi. È abile nel fondere la visione artistica con il marketing strategico per creare narrazioni di brand di grande impatto.

Commenti

Ancora nessun commento. Scrivi il primo.