Come imposto le importazioni dei moduli in modo che ogni modulo possa accedere agli oggetti di tutti gli altri?Importare correttamente i moduli in Python
Ho un'applicazione Python di medie dimensioni con file di moduli in varie sottodirectory. Ho creato moduli che aggiungono queste sottodirectory a sys.path
e importa un gruppo di moduli, utilizzando import thisModule as tm
. Gli oggetti del modulo sono indicati con quella qualifica. Quindi importare quel modulo negli altri con from moduleImports import *
. Il codice è sciatto in questo momento e ha molte di queste cose, che sono spesso duplicate.
In primo luogo, l'applicazione non funziona perché alcuni riferimenti modulo non sono assegnati. Questo stesso codice viene eseguito quando l'unità viene testata.
In secondo luogo, sono preoccupato di causare problemi con le importazioni di moduli ricorsivi. Importando il moduloImports importa thisModule, che importa moduleImports. . . .
Qual è il modo giusto per farlo?
Non so se questo risponde direttamente alla tua domanda, ma [ho chiesto l'importazione di alcuni giorni fa] (http://stackoverflow.com/questions/860672/lay-out-import-pathing-in-python- straight-e-semplice). Trovato le risposte molto utili. L'importazione circolare –