Sobes.tech
Middle

Come Python cerca i moduli durante l'importazione?

sobes.tech AI

Risposta dell'AI

Python cerca i moduli nell'ordine seguente:

  1. Directory corrente dello script in esecuzione: Python cerca prima il modulo nella directory in cui si trova lo script in esecuzione. Questa è la prima voce in sys.path.
  2. Directory nelle variabili di ambiente PYTHONPATH: Successivamente, Python esamina le directory specificate nella variabile di ambiente PYTHONPATH. È una lista di percorsi separati dal delimitatore del sistema (ad esempio, due punti su Unix o punto e virgola su Windows).
  3. Directory di installazione standard di Python: Python cerca nelle directory standard in cui vengono installate le sue librerie. Questi percorsi sono definiti durante la compilazione di Python e di solito includono percorsi alla directory site-packages.
  4. File .pth: Python può anche usare file .pth, situati nelle directory di sys.path. Questi file contengono percorsi aggiuntivi che verranno aggiunti a sys.path all'avvio di Python.

L'ordine delle directory in cui Python cerca i moduli è mantenuto nella lista sys.path.

Esempio per visualizzare sys.path:

import sys

print(sys.path)

Quando viene trovato un modulo, il suo codice viene caricato ed eseguito, e poi diventa disponibile con il nome specificato nell'istruzione import. Se il modulo non viene trovato in nessuno di questi luoghi, viene sollevata l'eccezione ModuleNotFoundError. Prima di Python 3.6, questa eccezione si chiamava ImportError.