Moduli Python

I moduli Python sono essenzialmente file di script Python che possono contenere variabili, funzioni e classi. I moduli Python ci aiutano nell’organizzazione del nostro codice e nel riferimento ad essi in altre classi o script Python.

A file containing Python definitions and statements is called a python module. So naturally, the file name is the module name which is appended with the suffix .py. For better understanding let’s create a python module to explore it completely. First create a file named printNumbers.py with the following contents.

def printForward(n):

    # stampa da 1 a n
    for i in range(n):
        print(i+1)


def printBackwards(n):

    # stampa da n a 1
    for i in range(n):
        print(n-i)

Ora, nell’interprete Python, importa questo modulo con il seguente comando;

import printNumbers

Questo comando di importazione cercherà il file printNumbers.py nella directory corrente e nelle posizioni delle variabili PATH. Una volta trovato il file, il codice in esso sarà disponibile per noi. Ora, per accedere alla funzione del modulo, dobbiamo utilizzare il nome del modulo come segue: A volte, se il modulo è grande, per semplificare la chiamata della funzione, possiamo rinominare l’importazione come segue:

Importare una specifica funzione di un modulo Python

A volte è superfluo importare tutte le funzioni di un modulo Python. Potremmo aver bisogno solo di una o due funzioni. In tal caso, possiamo utilizzare la seguente variante dello statement di importazione; Una cosa da notare qui, mentre importiamo printForward, è inclusa nella tabella dei simboli corrente. Quindi non è necessario chiamare la funzione come – printNumbers.printForward() Un’altra variante può essere utile a volte. Qui abbiamo usato il rinominare come abbiamo fatto in precedenza per facilitare l’uso della funzione. Inoltre, se vogliamo importare tutti i nomi che un modulo definisce, c’è un’altra variante per l’importazione. Questo importa tutti i nomi tranne quelli che iniziano con un trattino basso (_). Ma questa non è una pratica ideale poiché introduce un insieme sconosciuto di nomi nell’interprete.

Domande frequenti sui moduli Python

Esaminiamo alcune domande comuni relative ai moduli Python.

Quali sono i moduli integrati in Python?

Ci sono molti moduli integrati in Python. Alcuni dei più importanti sono – collections, datetime, logging, math, numpy, os, pip, sys, e time. Puoi eseguire il comando help('modules') nella shell di Python per ottenere l’elenco dei moduli disponibili.

Qual è la differenza tra modulo e pacchetto in Python?

Pacchetto Python è una collezione di moduli Python. Il modulo Python è un singolo file Python mentre il pacchetto Python è una directory che contiene più script Python e il file __init__.py che definisce i dettagli del pacchetto.

Dove posso trovare l’elenco dei moduli Python?

Puoi trovare l’elenco dei moduli Python dalla loro pagina ufficiale dell’Indice dei Moduli Python. Tuttavia, se stai cercando i moduli Python disponibili per te, puoi eseguire il comando help('modules') nella shell di Python per ottenere l’elenco dei moduli disponibili.

Python Modules List

Per favore controlla questo Repository GitHub per un elenco dei moduli Python più importanti e imparali attraverso i loro tutorial specifici e programmi di esempio.

Come posso importare un modulo da una directory diversa?

Quando proviamo ad importare un modulo Python, viene cercato nella directory corrente e nella posizione della variabile PATH. Quindi, se il tuo file Python non è presente in queste posizioni, otterrai un ModuleNotFoundError. La soluzione è importare il modulo sys e quindi aggiungere la directory richiesta alla sua variabile di percorso. Il codice seguente mostra l’errore quando proviamo ad importare da una directory diversa e come lo risolvo aggiungendo la sua directory alla variabile di percorso.

$ python3.7
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import test123
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'test123'
>>> import sys
>>> sys.path.append('/Users/pankaj/temp')
>>> import test123
>>> test123.x
10
>>> test123.foo()
foo
>>> 

Elenco dei moduli Python

Ci sono migliaia di moduli Python e ne vengono sviluppati sempre di più ogni giorno. Abbiamo scritto tutorial per molti moduli Python popolari. Segui semplicemente i link dalla tabella sottostante per apprendere questi moduli.

Riferimenti:

Source:
https://www.digitalocean.com/community/tutorials/python-modules