ModuleNotFoundError: No module named ‘distutils.cmd‘

ubuntu 22.04 LTS

python3.10

版本太高,需要python3.6,python3.8版本

根据需求,切换,保证原有的系统正常使用;

以,python3.8为例:

1 Ubuntu安装Python3.8

一、安装Python3.8

Ubuntu 官方 apt 库中还未收录 python 3.8,这里使用 deadsnakes PPA 软件源安装。

1、安装依赖包

bash 复制代码
$ sudo apt-get update
$ sudo apt-get install software-properties-common

2、添加 deadsnakes PPA 源

bash 复制代码
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt-get update

3、安装 python 3.8

bash 复制代码
$ sudo apt-get install python3.8

2 启动虚拟环境

bash 复制代码
 $ virtualenv -p  /usr/bin/python3.8 PY38 --python=python3.8
created virtual environment CPython3.8.17.final.0-64 in 335ms
  creator CPython3Posix(dest=/home/book/code/aaa/PY38, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/book/.local/share/virtualenv)
    added seed packages: pip==22.0.2, setuptools==59.6.0, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

3 启动Pip3报错

bash 复制代码
    from distutils.cmd import Command as DistutilsCommand

解决方法:

bash 复制代码
$ sudo apt-get install python3.8-distutils
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  python3.8-lib2to3
The following NEW packages will be installed:
  python3.8-distutils python3.8-lib2to3
0 upgraded, 2 newly installed, 0 to remove and 296 not upgraded.
Need to get 319 kB of archives.
After this operation, 1,237 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy/main amd64 python3.8-lib2to3 all 3.8.17-1+jammy1 [126 kB]
Get:2 https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy/main amd64 python3.8-distutils all 3.8.17-1+jammy1 [193 kB]
Fetched 319 kB in 11s (28.9 kB/s)
Selecting previously unselected package python3.8-lib2to3.
(Reading database ... 212247 files and directories currently installed.)
Preparing to unpack .../python3.8-lib2to3_3.8.17-1+jammy1_all.deb ...
Unpacking python3.8-lib2to3 (3.8.17-1+jammy1) ...
Selecting previously unselected package python3.8-distutils.
Preparing to unpack .../python3.8-distutils_3.8.17-1+jammy1_all.deb ...
Unpacking python3.8-distutils (3.8.17-1+jammy1) ...
Setting up python3.8-lib2to3 (3.8.17-1+jammy1) ...
Setting up python3.8-distutils (3.8.17-1+jammy1) ...
$pip install -r src/requirements.txt
相关推荐
JarvanMo12 分钟前
Flutter:展示大段格式化文本的挑战
前端
兆子龙18 分钟前
Node.js ESM Loader Hooks 介绍:用 module.register 做转译、Import Map 与自定义解析
前端
四眼肥鱼19 分钟前
flutter 利用flutter_libserialport 实现SQ800 串口通信
前端·flutter
ZFSS19 分钟前
OpenAI Images Edits API 申请及使用
前端·人工智能
Lee川31 分钟前
从零构建AI对话应用:Vite脚手架搭建与API密钥安全实践
前端·程序员
允许部分打工人先富起来33 分钟前
在node项目中执行python脚本
前端·python·node.js
钟智强33 分钟前
Flutter引擎Android平台JNI层未验证指针转换漏洞
前端
骑着小黑马38 分钟前
Electron + Vue3 + AI 做了一个新闻生成器:从 0 到 1 的完整实战记录
前端·人工智能
Sailing40 分钟前
LLM 调用从 60s 卡死降到 3s!彻底绕过 tiktoken 网络阻塞(LangChain.js 必看)
前端·langchain·llm
洋洋技术笔记40 分钟前
计算属性与侦听器
前端·vue.js