使用Pip将软件包安装到Anaconda Environment

康达4.2.13 MacOSX 10.12.1


我正在尝试将软件包安装pip到使用anaconda创建的新环境(虚拟)中。 在Anaconda文档中,这说得很好。它的完成方式与virtualenv相同。


激活要放置程序的环境,然后pip安装程序...


我在Ananconda中创建了一个空环境,如下所示:


conda create -n shrink_venv

激活它:


source activate shrink_venv

然后,我可以在终端中看到我正在环境中工作(shrink_venv)。当我尝试使用安装软件包时,出现了问题pip:


(shrink_venv): pip install Pillow


Requirement already satisfied (use --upgrade to upgrade): Pillow in /Library/Python/2.7/site-packages

因此,我可以看到它认为从系统范围的软件包中可以满足要求。因此,似乎环境无法正常运行,绝对不像文档中所说的那样。我在这里做错什么了吗?


请注意,我知道您可以使用conda install这些软件包,但是anaconda的Pillow遇到了问题,因此我想从中获取它pip,并且由于文档说还可以。


输出which -a pip:


/usr/local/bin/pip

/Users/my_user/anaconda/bin/pip

**更新**我看到这是很常见的问题。我发现,conda env在PYTHONPATH中的表现不佳。即使您使用的是conda环境,该系统似乎也总是在PYTHONPATH位置中查找。现在,我总是unset PYTHONPATH在使用conda环境时运行,并且效果更好。我在Mac上。


桃花长相依
浏览 1569回答 3
3回答

函数式编程

对于遇到这种情况的其他人,我发现这是最直接的解决方案:运行conda create -n venv_name和source activate venv_name,venv_name您的虚拟环境的名称在哪里。运行conda install pip。这会将pip安装到您的venv目录。找到您的anaconda目录,并找到实际的venv文件夹。它应该在类似的地方/anaconda/envs/venv_name/。通过安装新软件包/anaconda/envs/venv_name/bin/pip install package_name。现在,这应该可以使用该虚拟环境的pip成功安装软件包!

阿晨1998

所有您需要做的就是打开Anaconda Prompt并输入pip install package-name它将自动安装到anaconda环境,而无需使用conda install package-name由于某些conda软件包可能缺少加班支持,因此需要使用pip进行安装,这是一种实现方法。如果您在anaconda中安装了pip,则可以在jupyter笔记本中或与anaconda链接的python shell中运行以下命令pip.main(['install', 'package-name'])使用检查您的pip版本pip.__version__。如果是版本10.x.x或更高版本,请使用以下代码行安装python软件包subprocess.check_call([sys.executable, '-m', 'pip', 'install', '--upgrade', 'package-name'])在jupyter笔记本中,您可以通过pip在单元格中安装python软件包。!pip install package-name或者您可以使用与蟒蛇关联的python版本!python3.6 -m pip install package-name

长风秋雁

如果在创建conda环境时未添加点子conda create -n env_name pip也没有在环境内安装点子source activate env_nameconda install pip那么您获得的唯一点就是系统点,它将在全球范围内安装软件包。正如您在此问题中看到的那样,即使执行了上述任何一个过程,conda环境中pip的行为仍然是不确定的。为了确保使用conda环境中安装的pip而不需要输入longy /home/username/anaconda/envs/env_name/bin/pip,我编写了一个shell函数:# Using pip to install packages inside conda environments.cpip() {    ERROR_MSG="Not in a conda environment."    ERROR_MSG="$ERROR_MSG\nUse \`source activate ENV\`"    ERROR_MSG="$ERROR_MSG to enter a conda environment."    [ -z "$CONDA_DEFAULT_ENV" ] && echo "$ERROR_MSG" && return 1    ERROR_MSG='Pip not installed in current conda environment.'    ERROR_MSG="$ERROR_MSG\nUse \`conda install pip\`"    ERROR_MSG="$ERROR_MSG to install pip in current conda environment."    [ -e "$CONDA_PREFIX/bin/pip" ] || (echo "$ERROR_MSG" && return 2)    PIP="$CONDA_PREFIX/bin/pip"    "$PIP" "$@"}希望这对您有帮助。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python