zoukankan      html  css  js  c++  java
  • ubuntu升级python后ModuleNotFoundError: No module named 'apt_pkg'异常

    ubuntu 18.04默认的python3的版本为3.6,各种原因需要升级python版本
    lozz

    升级python版本
    • 升级python

    首先更新软件包列表并安装必备组件

    sudo apt update
    sudo apt install software-properties-common
    

    添加PPA

    sudo add-apt-repository ppa:deadsnakes/ppa
    

    安装Python 3.8(以3.8版本为例)

    sudo apt install python3.8
    
    • 配置 python3.8 为系统默认 python3

    将 python 各版本添加到 update-alternatives

    ⇒  which python3.8
    /usr/bin/python3.8
    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
    
    ⇒  which python3.6
    /usr/bin/python3.6
    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2
    

    配置 python3 默认指向 python3.8

    ⇒  sudo update-alternatives --config python3
    有 2 个候选项可用于替换 python3 (提供 /usr/bin/python3)。
    
      选择       路径              优先级  状态
    ------------------------------------------------------------
      0            /usr/bin/python3.6   2         自动模式
      1            /usr/bin/python3.6   2         手动模式
    * 2            /usr/bin/python3.8   1         手动模式
    
    要维持当前值[*]请按<回车键>,或者键入选择的编号:
    

    输入 2(python3.8前的序号), 回车.完成设置

    升级python版本后的异常
    • 升级完python版本后,会出现异常
    ModuleNotFoundError: No module named 'apt_pkg'
    
    解决方法
    cd /usr/lib/python3/dist-packages/
    
    • 复制
    sudo cp apt_pkg.cpython-36m-x86_64-linux-gnu.so  apt_pkg.cpython-38m-x86_64-linux-gnu.so
    
    sudo ln -s apt_pkg.cpython-38m-x86_64-linux-gnu.so apt_pkg.so
    

    如果报错,则执行下方命令,强制添加

    sudo ln -fs apt_pkg.cpython-36m-x86_64-linux-gnu.so apt_pkg.so
    
  • 相关阅读:
    fn project 试用之后的几个问题的解答
    fn project 扩展
    fn project 生产环境使用
    fn project 对象模型
    fn project AWS Lambda 格式 functions
    fn project 打包Function
    fn project Function files 说明
    fn project hot functions 说明
    fn project k8s 集成
    fn project 私有镜像发布
  • 原文地址:https://www.cnblogs.com/lozz/p/14261608.html
Copyright © 2011-2022 走看看