3.22 pkgutil -- Utility per le estensioni dei package

Nuovo nella versione 2.3.

Questo modulo fornisce una singola funzione:

extend_path( path, name)
Estende il path (NdT: percorso) di ricerca per i moduli che contengono un package. Il corretto utilizzo consiste nel posizionare il seguente codice in un file __init__.py del package:

from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)

Questo aggiungerà al __path__ del package tutte le sotto directory delle directory su sys.path, nominato dopo il package. Questo è molto utile se si vogliono distribuire differenti parti di un singolo package logico come directory multiple.

Inoltre cerca nelle righe iniziali dei file *.pkg le corrispondenze di * al name dell'argomento. Questa funzionalità è simile a quella relativa ai file *.pth (vedete il modulo site per ulteriori informazioni), tranne per il fatto che non vengono assegnati caratteri speciali alle righe che iniziano con import. Un file *.pkg viene assegnato come valore di riferimento: ad eccezione dei duplicati che vegono individuati, tutti i valori trovati in un file *.pkg vengono aggiunti al path, indipendentemente dal fatto che esistano nel filsystem. (Questa è una caratteristica.)

Se il percorso di input non è una lista (come nel caso dei package frozen) viene restituito invariato. Il percorso di input non viene modificato; viene restituita una copia estesa. Gli argomenti vengono soltanto aggiunti nella coda della copia.

Viene assunto che sys.path sia una sequenza. Gli elementi di sys.path che non sono stringhe (Unicode o 8-bit) riferite a directory esistenti, vengono ignorati. Gli elementi Unicode all'interno di sys.path che causano errori quando utilizzati come nomi dei file, potrebbero causare il sollevamento di un'eccezione da parte della funzione (in linea con il comportamento di os.path.isdir()).

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.