Je suis en train d'organiser des modules pour mon propre usage. J'ai quelque chose comme ceci:
lib/
__init__.py
settings.py
foo/
__init__.py
someobject.py
bar/
__init__.py
somethingelse.py
En lib/__init__.py
, je veux définir un certain nombre de classes à utiliser que si je l'importation lib. Cependant, je n'arrive pas à le comprendre, sans séparer les classes dans des fichiers, et de les importer en __init__.py
.
Plutôt que de 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
Je veux quelque chose comme ceci:
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
Est-il possible, ou dois-je séparer la classe dans un autre fichier?
MODIFIER
OK, si je l'importation lib à partir d'un autre script, je peux accéder à la classe Helper. Comment puis-je accéder à la classe Helper de settings.py?
L'exemple ici décrit Intra-Paquet de Références. Je cite "submodules souvent besoin de consulter les uns les autres". Dans mon cas, l'lib.settings.py besoin de l'aide et de lib.foo.someobject besoin de l'accès à l'Aide, mais où dois-je définir la classe Helper?