Pergunta

Digamos que eu tenha a seguinte estrutura de arquivos:

app/
  app.py
  controllers/
    __init__.py
    project.py
    plugin.py

Se app/controllers/project.py definir uma classe Project, app.py o importaria assim:

from app.controllers.project import Project

Eu gostaria de poder fazer:

from app.controllers import Project

Como isso seria feito?

Foi útil?

Solução

Você precisa colocar

from project import Project

em controllers/__init__.py.

Observe que quando Importações absolutas se tornar o padrão (Python 2.7?), você desejará adicionar um ponto antes do nome do módulo (para evitar colisões com um modelo de nível superior chamado project), ou seja,

from .project import Project
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top