Avatar ·

Relative imports in Python

📁 Sujets avancés sur Python, Question simple de débutant, aide

Depuis un certain temps (car les imports relatifs ont été annulés), je n'arrive pas à résoudre normalement la question suivante :

Supposons la structure du programme :

App/
    __init__.py
    foo/
        __init__.py
        handler.py

Comment, depuis le module handler.py, charger quelque chose depuis le package foo ?

Le problème est que le nom du package foo est inconnu, je le charge avec importlib.

Pour l'instant, j'ai trouvé ce bricolage : je découpe la variable __name__, qui dans handler.py est égale à 'foo.Handler', comme ceci :

foo_name = __name__.rsplit('.',