Ik probeer enkele modules voor eigen gebruik te organiseren. Ik heb zoiets als dit:
lib/ __init__.py settings.py foo/ __init__.py someobject.py bar/ __init__.py somethingelse.py
In lib/__init__.py
wil ik enkele klassen definiëren die moeten worden gebruikt als ik lib importeer. Ik kan er echter niet achter komen zonder de klassen in bestanden te verdelen en ze in__init__.py
te importeren.
In plaats van te zeggen:
lib/ __init__.py settings.py helperclass.py foo/ __init__.py someobject.py bar/ __init__.py somethingelse.py van lib.settings import Waarden van lib.helperclass import Helper
Ik wil zoiets als dit:
lib/ __init__.py #Helper gedefinieerd in dit bestand settings.py foo/ __init__.py someobject.py bar/ __init__.py somethingelse.py from lib.settings import Waarden van lib import Helper
Is het mogelijk, of moet ik de klasse opsplitsen in een ander bestand?
EDIT
OK, als ik lib importeer vanuit een ander script, heb ik toegang tot de Helper-klasse. Hoe krijg ik toegang tot de Helper-klasse vanuit settings.py?
Het voorbeeld hier beschrijft intra-pakketreferenties. Ik citeer "submodules moeten vaak naar elke haar". In mijn geval heeft lib.settings.py de Helper nodig en heeft lib.foo.someobject toegang tot Helper nodig, dus waar moet ik de klasse Helper definiëren?