商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Linux 下 Python 安装有几种方法

Linux 下 Python 安装有几种方法

  发布于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),那直接用包管理器准没错。它最大的好处是依赖自动搞定,而且和系统里其他工具兼容性最好。

  • Debian/Ubuntu 系
    更新索引并安装:sudo apt update && sudo apt install python3 python3-pip
    验证:python3 --versionpip3 --version
  • RHEL/CentOS/Fedora 系
    安装:sudo yum install python3(或 sudo dnf install python3),pip 可额外安装 sudo yum install python3-pip(或 dnf)
    验证:同上

要点:这是维护成本最低的方式。如果觉得版本不够新,可以再考虑后面两种方式,但千万别手痒去覆盖系统自带的 /usr/bin/python,那是很多系统工具的生命线。

方式二:从源码编译安装 — 版本控的“自己动手”

当你想用某个特定版本,或者需要开启性能优化(比如 --enable-optimizations),又或者想自定义安装路径,那就只能从源码编译了。这个过程不算复杂,但准备工作要做足。

  • 安装编译依赖(以 Debian/Ubuntu 为例)
    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-dev
    —— 这一长串包名看着吓人,但缺一个都可能编译失败,建议直接复制粘贴。
  • 下载与解压
    wget 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.xmake -j $(nproc)
    —— --enable-optimizations 会做一些 profile-guided 优化,能让 Python 跑得更快,但编译时间会长一些。
  • 安装
    sudo make altinstall
    —— 注意,这里用的是 altinstall 而不是 install,就是为了避免覆盖系统自带的 python 命令。这是关键细节。
  • 使用
    编译好的 Python 在 /usr/local/python3.x/bin/ 下,可以手动加入 PATH,或者创建软链接到 /usr/local/bin(但要小心别和系统默认的 python 冲突)。

方式三:使用 pyenv 管理多个版本 — 多版本切换的“神器”

如果你同时维护好几个项目,有的要求 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 git
  • 安装 pyenv 本身
    curl https://pyenv.run | bash
    —— 这条命令会安装 pyenv 以及它的插件(pyenv-virtualenv 等),非常方便。
  • 配置环境变量
    ~/.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)
    docker run --rm -it python:3.11 bash
    —— 这条命令会拉取官方 Python 3.11 镜像,然后进入交互式 shell。你可以在里面自由安装依赖,退出后容器自动销毁,不留痕迹。
  • 自动化脚本
    如果想批量部署,可以写一个脚本来自动安装 pyenv 并预设版本,或者直接用 pyenv 的自动化安装脚本(pyenv-installer)。组织内也可以自研脚本,统一依赖和版本,方便回滚。

通用验证与注意事项

不管用哪种方式装完,最好都验证一下:

  • 版本python3 --version(或 python --version,看你怎么配置的)
  • 包管理pip3 --version,如果缺失,可以用 sudo apt install python3-pipget-pip.py 安装。
  • 虚拟环境python3 -m venv .venv 然后 source .venv/bin/activate,再 which python 确认路径指向了虚拟环境。

最后,再强调三个关键点——这些是很多新手踩过的坑:

  • 不要动系统自带的 /usr/bin/python。很多系统工具(yum、dnf、甚至一些桌面环境)都依赖它。如果想自定义默认命令,请用 /usr/local/bin 下的软链接,并且明确调用 python3.xpip3.x
  • 编译安装时务必用 make altinstall,否则会覆盖系统的 python 二进制,后果自负。
  • 多版本管理首选 pyenv,它比手动折腾 PATH 和软链接要安全得多,也方便得多。
本文转载于:https://www.yisu.com/ask/73691976.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注