[英]Problems of VirtualEnv and pip3
我使用VirtualEnv创建了一个没有系统站点程序包的python2环境,如下所示:
virtualenv -p /usr/bin/python2.7 --no-site-packages ENV2.7
我想在此环境中安装软件包。 但是,我发现我的python代码仍在尝试从该环境中查找软件包。
例如,激活此环境后,我使用了:
pip install matplotlib
在我的demo.py中,
import matplotlib
但这引发了错误,并且找不到此软件包。但是,当我在终端中使用python并输入交互式python时,导入matplotlib不会引发错误。 然后,我启动了另一个终端,并尝试通过pip3将这个软件包安装到环境之外:
pip3 install matplotlib
事实证明,我的demo.py运行良好。
任何想法? 非常感谢!
听起来您的virtualenv pip版本可能使用的是pip3而不是pip2:
确保在项目中使用了正确的python版本 ,并在virtualenv中使用了相同版本的pip 。 (请注意,您一次在上面使用了pip
,然后在virtualenv之外使用了pip3
。)
从virtualenv内部检查您的pip版本:
workon (your env name)
which pip
pip -V
输出应类似于:
$ which pip
/home/yourname/.virtualenvs/testenv/bin/pip
$ pip -V
pip 9.0.1 from /home/yourname/.virtualenvs/testenv/local/lib/python2.7/site-packages (python 2.7)
它应该告诉您您在virtualenv中使用了pip,以及正确的python版本。
如果看起来正确,请安装软件包。 pip install (whatever)
检查它们是否安装了pip freeze
。
运行您的项目。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.