升级到 Ubuntu 20.04 后,python 3.7 venv 损坏

dc_*_*a98 8 operating-system upgrade linux-distro python-3.x python-venv

我刚刚升级到 Ubuntu 20.04。我在虚拟环境中使用 Django 处理 python 3.7 项目,所以即使使用升级的发行版(涉及安装 python 3.8),我也有信心我的 venv 仍然可以工作。不幸的是,事实并非如此:当我激活我的 venv 时,python 的解释器仍然是 3.8 版本,没有任何作用。python 3.7 完全缺失。我该怎么做才能恢复我的项目?

小智 3

对我来说同样的问题。如果您不想升级所有内容(也许并非所有软件包都可升级),这是我的解决方案。

  1. 安装 python 3.7,升级到 ubuntu 20 后就消失了

    sudo add-apt-repository ppa:deadsnakes/ppa
    sudo apt-get update
    sudo apt-get install python3.7
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在您的 virtualenv 目录(例如 env/)中编辑 pyenv.cfg 中的最后一行

    version = 3.7
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在 env/bin 中设置链接回 3.7 的 python3 软链接

    ln -s  /usr/bin/python3.7 python3
    
    Run Code Online (Sandbox Code Playgroud)

您可能需要在创建新符号之前删除旧符号

现在,应该有效:它对我有用!