【问题标题】:Anaconda always installs Python 3.7Anaconda 总是安装 Python 3.7
【发布时间】:2019-06-29 17:12:58
【问题描述】:

我的 Ubuntu 系统在 python 2.7.15 上

conda install -c anaconda flask

Anaconda 总是安装带有 Flask 和其他软件包的 python 3.5。如何在安装 anaconda 包时不安装 python 3.7 而保留 python 2.7.15?

【问题讨论】:

  • 我相信这只是将软件包安装到您当前的 conda env(可能是默认的 env),我假设它是 python 3.7。您需要使用您想要安装的任何 python 版本创建另一个环境。
  • 你的操作系统可以容纳任意数量的 python 解释器,它不是“在 Python 2.7.15 上”,除非你的意思是系统 Python,在这种情况下,你可能不应该无论如何都搞砸了,它不应该与你的 conda/anaconda python 发行版有关
  • 如果你想了解更多关于环境的概念,这里有一个很好的链接:realpython.com/python-virtual-environments-a-primer/…
  • @FelipeBormann 链接的文章涵盖了virtualenv python 环境管理器。 conda 本身也有 full environment management capabilities。如果您正在使用 Anaconda 发行版,那么我个人建议使用 conda 而不是 virtualenv 来管理 python 环境。另见Does Conda replace the need for virtualenv?
  • 是的,这是在 anacoda 虚拟环境中。我建议使用 anaconda 虚拟环境与 anaconda 安装程序配对conda.io/projects/conda/en/latest/user-guide/tasks/…

标签: python anaconda


【解决方案1】:

您使用 anaconda 安装的 Python 完全不会干扰您的系统 Python。除了系统 Python 之外,您还可以使用 Anaconda 拥有多个 Python(在多个 conda 环境中)。您只需确保在运行脚本时调用了哪一个,并确保它是您想要的。

要回答您提出的“字面”问题,您可以在安装某些东西时指定 Python 版本:

conda install -c anaconda flask python=2

这将使您的 Python 保持在版本 2,或者如果您要安装的软件包在适用于 Python 2 的 anaconda 上不可用,则报告不匹配。放弃 Python 2 支持的软件包数量正在增加,因为 Python 2 接近“结束” of life”,所以不要期望在 Python 2 中获得最新甚至接近最新版本的软件包。

我个人建议创建一个different environment,而不是尝试在基础环境中安装太多:

conda create -n mypython2environment python=2 flask

通过activating that environment,您应该能够使用您在该环境中安装的软件包:

activate mypython2environment

一些 IDE 内置了对 conda 环境的支持,因此这些可能会有所帮助(尤其是在确保您使用正确的环境和正确的 Python 方面)。

【讨论】:

  • 不需要先创建环境吗?我从来没有直接将python 参数传递给 conda install。它是如何工作的?
  • 它只是指定除了flask,您还想安装python=2。如果python=2 已经满足,则忽略它(“冲突解决”除外)。您可以使用它来降级/升级该环境中的 Python 版本。
  • 啊,我明白了,不过,我认为它不会在默认环境下工作,至少我上次尝试过这个。
  • 好的,这很有趣,我只是在本地尝试过它并且它有效(尽管它删除并降级了几个包)。虽然我的基础环境非常简单(只有 python、conda、pip 和它们的依赖项)。也许是 condas 依赖解析器的问题 - 我有时会遇到这种情况......
  • python=2 效果很好。我确实设置了一个 conda 虚拟环境,其中有一些 Celery 工作人员,所以我更喜欢将它全部保存在同一个 python 版本上。
猜你喜欢
  • 1970-01-01
  • 2018-12-09
  • 2019-12-02
  • 2020-03-19
  • 1970-01-01
  • 1970-01-01
  • 2019-03-17
  • 1970-01-01
  • 2019-11-28
相关资源
最近更新 更多