首页 > 解决方案 > 我应该如何更新 Conda、Pip 和 Python?

问题描述

在尝试更新 python 的过程中,我意识到我并不真正了解 python 是如何在我的计算机上执行的(macbook,OS X 10.11,在较旧的一侧)。我希望在搞砸之前消除一些基本的困惑。

2016 年左右,我安装了 anaconda。我实际上在 2017 年尝试卸载它,但肯定没有成功,因为从那时起我一直在无缝地使用 python(jupyter notebooks)。当我运行时conda list,我看到我正在运行 conda 4.1.11。它还列出了许多子包anaconda-4.1.1-np111py35_0, anaconda-client-1.4.0-py35_0, anaconda-navigator-1.2.1-py35_0, heapdict-1.0.0-py35_1, ipykernel-4.3.1-py35_0, ipython-4.2.0-py35_1, jupyter-1.0.0-py35_3, jupyter_client-4.3.0-py35_0, jupyter_console-4.1.1-py35_0, jupyter_core-4.1.0-py35_0, python-3.5.2-0, spyder-2.3.9-py35_0,例如 等。

所以这一切都很好;但是,我看到 pip 是另一个处理和安装 python 包的工具。我不记得安装 pip,但我的电脑上有 8.1.2 版。当我运行时pip list,我看到另一个子包列表。但是,与 conda list 包有大量重叠。例如anaconda-client (1.4.0), anaconda-navigator (1.2.1), HeapDict (1.0.0), idna (2.1), imagesize (0.7.1), ipykernel (4.3.1), ipython (4.2.0), jupyter (1.0.0), jupyter-client (4.3.0), jupyter-console (4.1.1), jupyter-core (4.1.0), spyder (2.3.9), 等。

那么,这意味着什么?当我运行jupyter notebook时,命令[nb_anacondacloud] enabled; [nb_conda] enabled执行。当我运行 pythonsys.version时,我看到Python version 3.5.2 | Anaconda 4.1.1. 所有东西都是通过 conda 运行的吗?点子如何影响这一点?如果有帮助,命令which -a pip给出//anaconda/bin/pip.

达到最终目标,我应该如何将 python 更新到 3.9(和 conda/pip/jupyter)?我应该通过 conda 来做吗?当我运行conda search python时,它列出的最高版本是 3.6.2。这是由于我当前的 conda 版本造成的吗?安装用于 jupyter 笔记本的新软件包(例如 PyTorch)怎么样?我看到“pip install ___”是一种非常常见的安装包的方式,但我也读到过同时使用 pip 和 conda 会产生问题。

另外,我应该在新环境中更新 python 吗?就像是

conda create -n test_env python=3.9.6
source activate test_env
conda install pip
jupyter notebook

欢迎任何建议或一般信息。

编辑:所以关于这个的 tl;dr 是,

  1. 为什么在我的电脑conda listpip list显示几乎相同的包集?

  2. 为什么conda search python只列出 python 到 3.6.2?只是因为我没有更新conda吗?这可能与我尝试卸载 conda 有关吗?

  3. 升级 conda/pip/jupyter/python 以确保我不会破坏任何东西的最可靠方法是什么?做就行了吗

conda update conda
conda update anaconda
conda update jupyter
conda update pip
conda install python=3.9.6

或者我应该为最后一行(或最后 2/3 行)创建一个新环境?

标签: pythonpipjupyter-notebookanacondaconda

解决方案


推荐阅读