发布于2026-07-06 阅读(0)
扫一扫,手机访问
在 Linux 上安装 Python,这事儿说简单也简单,说复杂也有不少门道。很多新手上来就跟着网上教程一通操作,结果把系统默认的 Python 搞乱了,导致 yum、dnf 这些工具罢工,回头还得折腾半天。所以,在动手之前,先搞清楚不同安装方式的适用场景和潜在坑点,其实比盲目执行命令更重要。
目前主流的安装方式有四种,从“省心省力”到“高度可控”,按场景和风险大致可以排个序:
| 方式 | 适用场景 | 核心优点 | 主要风险或注意 |
|---|---|---|---|
| 系统包管理器安装 | 追求稳定、快速,满足日常开发与运维 | 安装简单、依赖自动处理、与系统兼容性好 | 仓库版本可能偏旧;避免替换系统自带的 /usr/bin/python |
| 从源码编译安装 | 需要特定版本、开启优化或自定义编译选项 | 版本可控、可启用 –enable-optimizations、可指定安装前缀 | 需先安装编译依赖;操作不当可能影响系统工具链 |
| 使用 pyenv 管理多版本 | 同时维护多个项目、需要在 3.x 间快速切换 | 多版本并存、按项目/目录切换、隔离方便 | 初次配置略繁琐;仍需处理编译依赖 |
| 使用容器或自动化脚本 | 环境隔离、CI/CD、快速复现环境 | 一致性强、可移植、回滚方便 | 需掌握 Docker 等工具;非本机直装,调试路径不同 |
如果你只是想快速搭建一个可用的 Python 环境,而且不介意用稍旧一点的版本(比如系统仓库里的是 3.9 或 3.10,而不是最新的 3.13),那直接用包管理器准没错。它最大的好处是依赖自动搞定,而且和系统里其他工具兼容性最好。
sudo apt update && sudo apt install python3 python3-pippython3 --version、pip3 --versionsudo yum install python3(或 sudo dnf install python3),pip 可额外安装 sudo yum install python3-pip(或 dnf)要点:这是维护成本最低的方式。如果觉得版本不够新,可以再考虑后面两种方式,但千万别手痒去覆盖系统自带的 /usr/bin/python,那是很多系统工具的生命线。
当你想用某个特定版本,或者需要开启性能优化(比如 --enable-optimizations),又或者想自定义安装路径,那就只能从源码编译了。这个过程不算复杂,但准备工作要做足。
sudo apt install build-essential libssl-dev libffi-dev python3-dev libbz2-dev libsqlite3-dev libreadline-dev libncursesw5-dev tk-dev libgdbm-dev liblzma-dev zlib1g-devwget https://www.python.org/ftp/python/3.x.x/Python-3.x.x.tgz 然后 tar -xf Python-3.x.x.tgz 并进入目录。./configure --enable-optimizations --prefix=/usr/local/python3.x 加 make -j $(nproc)--enable-optimizations 会做一些 profile-guided 优化,能让 Python 跑得更快,但编译时间会长一些。sudo make altinstallaltinstall 而不是 install,就是为了避免覆盖系统自带的 python 命令。这是关键细节。/usr/local/python3.x/bin/ 下,可以手动加入 PATH,或者创建软链接到 /usr/local/bin(但要小心别和系统默认的 python 冲突)。如果你同时维护好几个项目,有的要求 Python 3.8,有的要用 3.11,还有的正在尝鲜 3.13,那 pyenv 绝对是首选。它能在用户层面实现多版本并存,按项目目录或全局切换,互不干扰。
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 gitcurl https://pyenv.run | bash~/.bashrc 或 ~/.zshrc 里加入:export PYENV_ROOT="$HOME/.pyenv"export PATH="$PYENV_ROOT/bin:$PATH"eval "$(pyenv init --path)"source ~/.bashrc 让其生效。pyenv install --list 列出所有可安装版本;pyenv install 3.11.5 安装指定版本;pyenv global 3.11.5 设置全局默认版本,pyenv local 3.8.10 则只影响当前目录。初次配置确实有点繁琐,但只要配好一次,后面切换版本就和喝水一样自然。
在团队协作、CI/CD 流水线、或者需要快速复现一个特定环境时,Docker 容器是最佳选择。它把整个 Python 环境连同依赖打包在一起,换个机器也能一模一样地跑起来。
docker run --rm -it python:3.11 bash不管用哪种方式装完,最好都验证一下:
python3 --version(或 python --version,看你怎么配置的)pip3 --version,如果缺失,可以用 sudo apt install python3-pip 或 get-pip.py 安装。python3 -m venv .venv 然后 source .venv/bin/activate,再 which python 确认路径指向了虚拟环境。最后,再强调三个关键点——这些是很多新手踩过的坑:
/usr/bin/python。很多系统工具(yum、dnf、甚至一些桌面环境)都依赖它。如果想自定义默认命令,请用 /usr/local/bin 下的软链接,并且明确调用 python3.x 或 pip3.x。make altinstall,否则会覆盖系统的 python 二进制,后果自负。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8