Sto cercando di organizzare alcuni moduli per uso personale. Ho qualcosa del genere:
lib/
__init__.py
settings.py
foo/
__init__.py
someobject.py
bar/
__init__.py
somethingelse.py
In lib/__init__.py
, voglio definire alcune classi da utilizzare se importa lib. Tuttavia, non riesco a capirlo senza separare le classi in file e importarle in formato __init__.py
.
Piuttosto che dire:
lib/
__init__.py
settings.py
helperclass.py
foo/
__init__.py
someobject.py
bar/
__init__.py
somethingelse.py
from lib.settings import Values
from lib.helperclass import Helper
Voglio qualcosa di simile:
lib/
__init__.py #Helper defined in this file
settings.py
foo/
__init__.py
someobject.py
bar/
__init__.py
somethingelse.py
from lib.settings import Values
from lib import Helper
È possibile o devo separare la classe in un altro file?
MODIFICARE
OK, se importi lib da un altro script, posso accedere alla classe Helper. Come posso accedere alla classe Helper da settings.py?
L'esempio qui descrive i riferimenti all'interno del pacchetto. Cito "i sottomoduli spesso hanno bisogno di riferirsi tra loro". Nel mio caso, lib.settings.py ha bisogno dell'Helper e lib.foo.someobject ha bisogno dell'accesso a Helper, quindi dove devo definire la classe Helper?