a roda de instalação do python conduz a um erro de importação
-
Primeiro crio a roda.
- instalo a roda:
pip install ./dist/*.whl
- tento importar o pacote:
python -c"import my_package"
ImportError: No module named 'my_package'
também, quando o faço pip list
, o my_package
está listado.
No entanto, quando corro, nada é mostrado.
Python versão 3.5 pip version 10.1 wheel version 0.31.1
actualizar:
Quando olho para os ficheiros dentro do meu ficheiro-1.0.0.dist-info, existe uma entrada inesperada em top_level.txt
. É o nome da pasta onde corri.
Entra. Acho que o meu está partido.
ACTUALIZAÇÃO EM RELAÇÃO À RESPOSTA ACEITE:
Aceitei a resposta abaixo. No entanto, penso que é melhor simplesmente cd
na pasta de pacotes. Mudar para uma pasta diferente, como sugerido abaixo, leva a um comportamento inesperado ao usar a opção -d
, ou seja, a pasta de destino onde gravar a roda. Isto seria relativo ao diretório especificado no setup.py file.
3 answers
Se precisar de executar o programa de configuração de outra pasta, certifique-se de que está a introduzir a pasta do projecto no programa.
from setuptools import setup
root = os.path.normpath(os.path.join(os.path.abspath(__file__), os.pardir))
os.chdir(root)
# or using pathlib (Python>=3.4):
import patlib
root = pathlib.Path(__file__).parent
os.chdir(str(root))
setup(...)
No meu caso, para resolvê-lo, tinha de actualizar o pip (uma vez que o Docker instalou o pip 9).
python3 -m pip install --upgrade pip