使用 Pip 将软件包安装到 Anaconda 环境

新手上路,请多包涵

康达 4.2.13 MacOSX 10.12.1

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

激活要放置程序的环境,然后 pip install a program…

我在 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 位置中查找。现在,在使用 conda 环境时,我总是运行 unset PYTHONPATH ,它的效果要好得多。我在Mac上。

原文由 jeffery_the_wind 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.7k
2 个回答

对于遇到这种情况的其他人,我发现这是最直接的解决方案:

  1. 运行 conda create -n venv_nameconda activate venv_name ,其中 venv_name 是您的虚拟环境的名称。

  2. 运行 conda install pip 。这会将 pip 安装到您的 venv 目录。

  3. 找到您的 anaconda 目录,然后找到实际的 venv 文件夹。它应该在 /anaconda/envs/venv_name/ 之类的地方。

  4. 通过执行 /anaconda/envs/venv_name/bin/pip install package_name 安装新软件包。

现在应该使用该虚拟环境的 pip 成功安装软件包!

原文由 Windmill 发布,翻译遵循 CC BY-SA 4.0 许可协议

您所要做的就是打开 Anaconda Prompt 并输入

pip install package-name

会自动安装到anaconda环境中,无需使用

conda install package-name

由于某些 conda 软件包可能缺乏超时支持,因此需要使用 pip 安装,这是一种方法

如果您在 anaconda 中安装了 pip,则可以在 jupyter notebook 或链接到 anaconda 的 python shell 中运行以下命令

pip.main(['install', 'package-name'])

使用 pip.__version__ 检查您的 pip 版本。如果是版本 10.x.x 或以上版本,那么用这行代码安装你的 python 包

subprocess.check_call([sys.executable, '-m', 'pip', 'install', '--upgrade', 'package-name'])

在你的 jupyter notebook 中,你可以通过 pip 以这种方式在单元格中安装 python 包;

 !pip install package-name

或者你可以使用与 anaconda 关联的 python 版本

!python3.6 -m pip install package-name

原文由 sambeth 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题