Avatar ·

Importaciones relativas en Python

📁 python, pregunta, ayuda

Desde hace un tiempo (ya que las importaciones relativas fueron canceladas) no puedo resolver normalmente la siguiente cuestión:

Supongamos, la estructura del programa

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

¿cómo desde el módulo handler.py cargar algo del paquete foo?

El punto es que el nombre del paquete foo es desconocido, no se sabe. Lo descargo con importlib.

Por ahora encontré este truco: corto la variable __name__, que en handler.py es igual a 'foo.Handler', es decir, así

foo_name = __name__.rsplit('.',