Он не будет работать с setuptools, потому что setuptools установит pexpect
как яйцо, а затем добавит его в easy-install.pth
, который проверяется только при запуске. Вы можете обойти эту проблему различными способами, но проще использовать вместо pip
установить pexpect:
>>> import pexpect
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named pexpect
>>> import os
>>> os.system('bin/pip install pexpect')
Downloading/unpacking pexpect
Downloading pexpect-2.4.tar.gz (113kB): 113kB downloaded
Running setup.py egg_info for package pexpect
Installing collected packages: pexpect
Running setup.py install for pexpect
Successfully installed pexpect
Cleaning up...
0
>>> import pexpect
>>>
pip
будет устанавливать модули в менее волшебный (но, возможно, Messier) способом, а модули в конечном итоге на SYS. путь напрямую, так что работает.
Если вы используете окна: при попытке этого: удалили ли вы файл 'pexpect.pth' в пакетах сайтов? – User
Я не уверен, что я понимаю ваш комментарий, я работаю на Linux, и перед запуском моего установщика я удаляю пакет pexpect 'easy_install -m pexpect' и' rm -rf /usr/lib/python2.7/ site-packages/pexpect-2.4-py2.7.egg', как описано в http://stackoverflow.com/questions/1231688/how-do-i-remove-packages-installed-with-pythons-easy-install – e271p314