Pergunta

questão dos Calouros (Eu estou apenas começando com Python e Pydev):

Eu criei um projeto "Playground" com (? Standard) src / sub-pasta raiz. De lá eu criei example.py.

Como faço para importar meu módulo "exemplo" no console interativo do Pydev? ">>> exemplo import" dá: "ImportError: No módulo chamado exemplo"

Foi útil?

Solução 2

Eu encontrei a resposta no site do Plone: ?? Configurando PYTHONPATH no Eclipse projeto . Isso fornece uma maneira conveniente de PYTHONPATH conjunto em uma base por projeto. No meu caso eu adicionei "/ Playground / src / root" para a lista Fonte pastas. ">>> Exemplo de importação", em seguida, trabalhou. (Eu ainda estou surpreso arquivos de projeto não são importadas por padrão, no entanto.)

Obrigado jldupont por me apontar na direção certa (re. PYTHONPATH)!

Outras dicas

Você precisa definir sua PYTHONPATH conformidade (pesquisa do Google é seu amigo) ou use * .pth na sua instalação do site-packages diretório apontando para a caminho do projeto. Não se esqueça de definir os detalhes do seu intérprete com Pydev (Janela-> Preferências> Pydev-> intérprete).

Seguindo o conselho PYTHONPATH acima, eu usei um pouco de um truque para começar este trabalho. Se entendi sua pergunta, você quer ter o diretório de trabalho atual no conjunto ambiente IPython para o diretório em que seus reside arquivos ativos. Então, se você está editando D: /projects/file.py, você quer o comando pwd () (em IPython) para retornar D: / projetos. Este é o lugar onde a parte em conjunto hackeada da minha solução vem. Todos os meus projetos estão em minha unidade D, mas todas as importações python normais vêm do local de instalação no meu disco C. Assim, o seguinte:

os.environ['PYTHONPATH'].split(os.pathsep)

resultados em uma lista na qual apenas um caminho está na unidade D, e esse caminho (a partir das respostas acima) é de diretório do meu arquivo ativo. Se você não usar a unidade D, então não deve haver alguma outra maneira original de identificar qual dos caminhos nessa lista se refere a seus projetos. Se não houver uma maneira de identificar exclusivamente o seu caminho do projeto, em seguida, esta resposta não funciona. Mas, no caso simples de "D: /" ser o suficiente de um identificador único, este é o meu código de inicialização nas configurações (Window> Preferences> PyDev> Console Interactive)

import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
import os;os.chdir([p for p in os.environ['PYTHONPATH'].split(os.pathsep) if p.startswith("D")][0])
pwd()
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top