如何在同一个脚本中安装和导入python模块?

时间:2013-09-10 11:15:34

标签: python import easy-install

我想写一个安装程序脚本,安装pexpect然后使用它。像

这样的东西
...
os.system('easy_install pexpect')
import pexpect
...

问题是导入失败,并显示消息

import pexpect
ImportError: No module named pexpect

如何获得相同的结果?

1 个答案:

答案 0 :(得分:1)

它不适用于setuptools,因为setuptools会将pexpect作为一个鸡蛋安装,然后将其添加到easy-install.pth,仅在启动时检查。{1}}。你可以通过各种方式解决这个问题,但更容易使用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将以不那么神奇(但可能更混乱)的方式安装模块,并且模块直接在sys.path上结束,这样就可以了。