擅长:python、mysql、java
<p>我认为在激活virtualenv之后,python路径应该指向环境站点包的位置,如果不是的话,它可能没有被激活。只有当你激活它后,你才会运行pip,这样它才能安装在虚拟env的站点包中。如果它没有激活,它将进入它已经知道的任何其他站点包中:</p>
<ul>
<li>步骤1:创建虚拟环境
<ul>
<li>一个拉。。。<code>virtualenv venv</code></li>
<li>只做一次!在</li>
</ul></li>
<li>第二步:激活vital env
<ul>
<li>像<code>source /venv/bin/activate</code></li>
<li>每次使用此虚拟环境时都需要执行此操作</li>
</ul></li>
<li>第三步:运行pip命令,看着它们安装在虚拟env站点包中!在</li>
</ul>
<p>如果您在步骤2之前执行第3步,那么您实际上没有使用您创建的虚拟环境,因此所有赌注都已取消,这可能是pip仍在安装到旧位置的原因。在</p>
<p>现在,我的总体建议是进一步使用<code>pyenv</code>将特定版本的python安装到<code>/Users/username/.pyenv folder</code>中,并放弃默认的OSX和自制软件包。它很简单,通过简单地发出命令来更改版本,您可以轻松地控制要使用的python的确切版本。在</p>
<p><strong>然后</strong>在python2中使用virtualenv,或者在python3中使用<code>pyvenv</code>if(不要与pyenv混淆)来构建虚拟环境,使用它们自己的本地站点包来存储pip模块。激活virtualenv时,$PYTHONPATH将切换到特定位置。在</p>
<p>然后流程将是:</p>
<ul>
<li>使用pyenv下拉并切换到要使用的python的特定版本,以覆盖homebrew和OSX版本。在</li>
<li>创建你的vitrualenv。这将创建一个bin,它将链接到您在上一步中指定的pyenv python堆栈。在</li>
<li>激活虚拟环境,然后继续。在</li>
</ul>
<p>完全控制你的环境!在</p>