Ubuntu上Python安装指南汇总
这是Ubuntu系统最简单、最安全的安装方式,适用于大多数日常需求。APT会自动处理依赖关系,确保系统稳定性。
sudo apt update(同步系统软件包信息);sudo apt install python3(默认安装最新稳定版,如Python 3.10/3.12);python3 --version(显示当前Python 3版本);sudo apt install python3-pip(用于后续安装Python库);pip3 --version(确认pip安装成功)。若系统APT源中没有所需Python版本(如Python 3.11+),可通过添加Deadsnakes PPA(个人包存档)获取。
sudo add-apt-repository ppa:deadsnakes/ppa(需管理员权限);sudo apt update(同步PPA源);sudo apt install python3.x(将x替换为目标版本号,如3.11);python3.x --version(如python3.11 --version)。若需要完全控制编译选项(如启用特定模块、优化性能),可选择源码编译。此方法耗时较长,需提前安装依赖。
sudo apt install build-essential zlib1g-dev libssl-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git(涵盖编译工具和Python依赖库);wget https://www.python.org/ftp/python/3.x.x/Python-3.x.x.tgz(替换3.x.x为目标版本,如3.9.7);tar -xf Python-3.x.x.tgz;cd Python-3.x.x;./configure --enable-optimizations(启用性能优化);make -j$(nproc)(使用所有CPU核心加速编译,nproc获取核心数);sudo make altinstall(不创建python3符号链接,防止冲突);python3.x --version(如python3.9 --version)。适合需要频繁切换Python版本的开发者(如同时开发多个项目,每个项目依赖不同Python版本)。
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git(与源码编译依赖一致);curl https://pyenv.run | bash(自动下载并安装Pyenv);~/.bashrc(或~/.zshrc)文件末尾:export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
然后运行source ~/.bashrc(使配置生效);pyenv install 3.x.x(如3.9.7,支持任意版本);pyenv global 3.x.x;pyenv local 3.x.x(在项目目录下运行,生成.python-version文件);python --version(显示Pyenv管理的Python版本)。无论采用哪种安装方式,都建议使用虚拟环境隔离项目依赖,避免全局Python环境混乱。
sudo apt install python3-venv(Ubuntu自带Python 3的虚拟环境模块);python3 -m venv myenv(在当前目录创建名为myenv的虚拟环境);source myenv/bin/activate(终端提示符前出现(myenv),表示激活成功);pip install package_name(仅在虚拟环境中安装,不影响全局);deactivate(返回全局Python环境)。apt)可能依赖特定Python版本(如Python 3.8),强行替换可能导致系统故障。建议使用altinstall(源码编译)或虚拟环境(Pyenv/venv);sudo apt update && sudo apt upgrade,确保系统依赖最新。