我想知道下面的importError,我骑不下它。我有一个本地virtualenv (venv),它安装了多个模块:
(venv) stam@stam:~$ pip list --local
cryptography (1.5.2)
cvxopt (1.1.9)
cycler (0.10.0)
Cython (0.25.1)
matplotlib (1.5.3)
more-itertools (2.2)
ndg-httpsclient (0.4.2)
numpy (1.11.2)
pandas (0.19.0)
paramiko (1.15.2)
Pillow (2.8.1)
pip (8.1.2)
psycopg2 (2.6)
python-apt (0.9.3.12)
python-dateutil (2.5.3)
python-debian (0.1.27)
scipy (0.18.1)
setuptools (28.6.1)
simplejson (3.8.2)
urllib3 (1.9.1)
wheel (0.24.0)
You are using pip version 8.1.2, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
(venv) stam@stam:~$ 现在,启动python解释器并尝试导入cvxopt (注意,它在上面的列表中)给了我一个importError。为什么会这样呢?我正在使用正确的python版本,我在of上工作,所以所有的事情都应该是开箱即用的。
(venv) stam@stam:~$ python
Python 2.7.9 (default, Aug 13 2016, 16:41:35)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cvxopt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named cvxopt
>>> 我有点迷茫,不知道该如何解决这个问题。似乎正确的python版本已经启动,至少我已经将其附加到虚拟环境中了。
在评论中要求的额外输出
(venv) stam@stam:~$ which python
/usr/bin/python
(venv) stam@stam:~$ which pip
/usr/local/bin/pip发布于 2017-12-22 16:10:51
根据which的输出,您的python和pip显然属于两个不同的实例。因此,您安装的所有库都将安装到其他python实例中。
最重要的解决方法是强制pip通过指定的解释器运行:
python -m pip list --local
python -m pip install cvxopthttps://stackoverflow.com/questions/47942901
复制相似问题