如何在Ubuntu 20.04中降级python版本?

Bro*_*žuß 10 ubuntu version python python3

我需要将 python 版本从 3.8 更改为 3.6 ?我怎样才能在 Ubuntu 20.04 中实现这一点?pyenv global 3.6.0我尝试过 pyenv,但是当我尝试像那时一样使用 pyenv 时,python3我仍然有 3.8 版本。

Gil*_*il' 15

不要降级系统版本:系统的某些部分可能会停止工作。切勿更改/usr/bin/python3,并避免将旧版本python3放入$PATH.

\n

deadsnakes存档为当前支持的 Ubuntu LTS 版本提供了最受支持的 Python 版本的软件包。要使这些包可用,请按照常规说明启用 PPA。然后安装您想要的软件包。

\n
sudo add-apt-repository ppa:deadsnakes/ppa\nsudo apt-get update\nsudo apt-get install python3.6\n
Run Code Online (Sandbox Code Playgroud)\n

然后,您可以为您选择的 Python 版本和一组选定的包创建虚拟环境。

\n
python3.6 -m venv ~/python/foo-3.6\nsh -c \'.export PYTHONNOUSERSITE=1;  ~/python/foo-3.6/bin/activate; pip install \xe2\x80\xa6\'\n
Run Code Online (Sandbox Code Playgroud)\n

要在此环境中运行程序,请bin/activate在 shell 中获取脚本。

\n
$ bash\n$ export PYTHONNOUSERSITE=1\n$ . ~/python/foo-3.6/bin/activate\n$ ./my_python_program\n
Run Code Online (Sandbox Code Playgroud)\n


小智 10

或者,您可以创建虚拟环境。

\n

假设您的系统上安装了python 3.8 (或更高版本) ,但对于特定任务,您需要python 3.7 (或更低版本)。最好的想法是(不要降级)使用 python 3.7(或任何 3.x)创建虚拟环境,根据您所需的版本更改以下命令。下面是使用 python 3.7 的虚拟环境的实现

\n

步骤:(2022 年 8 月检查)

\n
    \n
  1. 安装python 3.7和it\xe2\x80\x99s虚拟环境包。

    \n

    sudo apt-get install python3.7-dev python3.7-venv

    \n
  2. \n
\n

注意:如果您收到类似以下错误:\n E: Couldn\xe2\x80\x99t find any package by glob \xe2\x80\x98python3.7\xe2\x80\x99 ,表明无法安装软件包。

\n

运行下面的命令,然后重新运行上面的安装命令:

\n

apt update

\n

sudo apt install software-properties-common

\n

sudo add-apt-repository ppa:deadsnakes/ppa

\n
    \n
  1. 通过以下命令找出您的 python 3.7 所在的位置:

    \n

    which python3.7(应该类似于/usr/bin/python3.7,如果没有找到,则手动安装 python 3.7 )

    \n
  2. \n
  3. 在主目录中创建虚拟环境。

    \n

    cd

    \n

    mkdir virtual_env

    \n

    /usr/bin/python3.7 -m venv ~/virtual_env/venv_with_python3.7

    \n

    source ~/virtual_env/venv_with_python3.7/bin/activate

    \n
  4. \n
  5. python --version(现在应该是python 3.7)

    \n
  6. \n
  7. 完毕。该虚拟环境中可以使用Python 3.7。输入which python,您\xe2\x80\x99将看到您已经在虚拟环境中创建了python 3.7,而不是在系统全局中。

    \n

    deactivate当您需要停用时运行。

    \n
  8. \n
\n