简体   繁体   中英

Pip installs but module is not found

I am trying to install Exscript from github.

pip install -e 'git+git://github.com/knipknap/exscript.git#egg=Exscript'
...
Successfully installed Exscript
Cleaning up..

When i try to load it, python is not able to find it:

python2.7 -c "import Exscript"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named Exscript

But, when i try to install it in the same virtualenv with setup.py it installs and loads successfully.

What am i doing wrong?

The flag -e means "editable", and what happens behind the scenes is a symlink, and as I see, Exscript uses a directory named src , what is not seen a good practice[1].

So, in order to solve your problem, you have two alternatives:

  1. Remove -e flag
  2. Change Exscript to get rid of src , and use another directory name

Take a look at https://the-hitchhikers-guide-to-packaging.readthedocs.io/en/latest/creation.html#arranging-your-file-and-directory-structure and https://setuptools.readthedocs.io/en/latest/userguide/development_mode.html .

[1]: the good practice is to have the directory as the same name as used when importing the package

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM