在安装Python前,建议先检查系统是否已预装Python,避免重复安装导致冲突。打开终端(Ctrl+Alt+T),输入以下命令:

python3 --version若输出类似Python 3.x.x的版本号,说明系统已安装Python 3;若提示command not found,则需按以下步骤安装。
APT是Ubuntu默认的包管理工具,能自动处理依赖关系,适合大多数用户。
sudo apt update && sudo apt upgrade -ysudo apt install python3 -ysudo apt install python3-pip -ypython3 --version# 查看Python版本pip3 --version # 查看pip版本若输出版本号(如Python 3.10.12、pip 23.3.1),则说明安装成功。
若需要安装Ubuntu官方仓库未提供的Python版本(如3.12),可通过Deadsnakes PPA(Personal Package Archive)扩展软件源。
sudo apt install software-properties-common -y# 安装add-apt-repository工具sudo add-apt-repository ppa:deadsnakes/ppa -y # 添加Deadsnakes PPAsudo apt update # 更新软件包列表sudo apt install python3.12 -ypython3.12 --version若输出Python 3.12.x,则说明安装成功。
若需要完全控制安装路径、优化选项或安装旧版本,可从Python官网下载源码编译。
sudo apt updatesudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libbz2-dev wgetwget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz# 替换为目标版本号tar -xzf Python-3.12.0.tgzcd Python-3.12.0./configure --enable-optimizations# 启用性能优化(编译时间较长)make -j$(nproc) # 使用所有CPU核心并行编译(加快速度)sudo make altinstall# 使用altinstall而非install,防止覆盖系统默认python3python3.12 --version若输出Python 3.12.0,则说明编译安装成功。
若需要同时安装多个Python版本并快速切换,可使用pyenv工具。
curl https://pyenv.run | bash# 下载并运行pyenv安装脚本将以下内容添加到~/.bashrc(或~/.zshrc,根据使用的Shell调整)文件末尾:
export PATH="$HOME/.pyenv/bin:$PATH"eval "$(pyenv init --path)"eval "$(pyenv init -)"eval "$(pyenv virtualenv-init -)"保存后运行source ~/.bashrc使配置生效。
pyenv install 3.10.12# 安装指定版本pyenv install 3.12.0 # 可同时安装多个版本pyenv global 3.12.0# 设置全局默认版本(所有终端生效)pyenv local 3.10.12# 在当前目录下使用指定版本(创建.python-version文件)python --version# 输出当前pyenv管理的Python版本通过pyenv versions可查看所有已安装的版本。
为避免不同项目的依赖冲突,建议为每个项目创建虚拟环境。
sudo apt install python3-venv -ypython3 -m venv myenv# 在当前目录创建名为myenv的虚拟环境source myenv/bin/activate# 激活后,终端提示符会显示(myenv)激活后,所有pip install命令都会将包安装到虚拟环境中,不影响系统Python。
deactivate以上是Ubuntu系统安装Python的常用方法,可根据需求选择合适的方式。若需更详细的指导,可参考Ubuntu官方文档或Python官网。
LogicFlow 工作流撤销与重做:从全量快照到命令模式
修复 uni-app App 端 vue-i18n 占位符丢失:封装跨端可用的 tf 格式化方法
极光推送全攻略下:uni-app 代码实现与 iOS 排查实战
腾讯云 TRTC UniApp SDK 从入门到上线指南
VueRouter进阶-动态路由与嵌套路由
Vue 2 中 Object 的变化侦测:从 getter/setter 到 Dep Watcher Observer