3

在 ubuntu 18.04 中,当我通过以下命令将默认 python 从 python 3.6 更改为其他版本时:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 1

或者当我删除 python 3.6 并安装其他版本netplan apply不起作用并导致此错误:

  File "/usr/sbin/netplan", line 20, in <module>
    from netplan import Netplan
  File "/usr/share/netplan/netplan/__init__.py", line 18, in <module>
    from netplan.cli.core import Netplan
  File "/usr/share/netplan/netplan/cli/core.py", line 24, in <module>
    import netplan.cli.utils as utils
  File "/usr/share/netplan/netplan/cli/utils.py", line 25, in <module>
    import netifaces
ModuleNotFoundError: No module named 'netifaces'

并且命令pip install netifaces有一些错误。

4

2 回答 2

1

我之前遇到过同样的问题。如果你update-alternatives用来使 python3 别名指向另一个版本的 Python,vagrant 将不起作用。您不能使用update-alternatives更改 Python3 的别名。

于 2021-01-04T17:58:28.207 回答
0

由于某种原因,在我的 ubuntu 服务器进行更新后,我丢失了我的 python 配置,通过以下方式解决:

检查我是否可以在 CLI 上导入模块:

python
import python

在收到相同的消息后,我意识到我的 python 环境正在使用这些模块,即使它全部显示为已安装,我继续“升级”python 模块:

python pip install --upgrade pip

python pip install --upgrade netifaces

python pip install --upgrade "any module you need to use for your script"

就像模块被识别更新并正确安装一样。

于 2021-07-26T18:57:33.240 回答