Importação de módulos da pasta principal
Estou a executar o Python 2.5.
Esta é a minha árvore de pastas:
ptdraft/
nib.py
simulations/
life/
life.py
(Eu também tenho __init__.py
em cada pasta, omitido aqui para legibilidade)
Como importar o módulo nib
de dentro do módulo life
? Eu espero que seja possível fazer sem mexer no sys.path.
Nota: O módulo principal a ser executado está na pasta ptdraft
.
539
3
Você poderia usar importações relativas (python >= 2,5):
(What's New in Python 2.5) PEP 328: Importações Absolutas e Relativas
EDIT: adicionado outro ponto '.' para subir dois pacotes
Parece que o problema não está relacionado com o módulo estar em um diretório pai ou algo parecido.
Você precisa adicionar o diretório que contém o
ptdraft
ao PYTHONPATHVocê disse que "import nib" funcionou com você, isso provavelmente significa que você adicionou o próprio
ptdraft
(não seu pai) ao PYTHONPATH.Se adicionar sua pasta de módulos ao PYTHONPATH não't funcionar, Você pode modificar a lista **sys.path*** no seu programa onde o intérprete Python procura os módulos a importar, a documentação python diz:
Sabendo disso, você pode fazer o seguinte em seu programa: