在 Ubuntu 上装 Python 依赖,看起来只是执行一条安装命令,但真正影响后续使用体验的,是你选了哪条路径:系统仓库、Python 官方包管理,还是先建虚拟环境再装。本文按实际使用场景梳理 `apt`、`pip3` 和 `venv` 的适用范围、操作步骤与排错重点,方便你在“能装上”和“后面不冲突”之间做出更稳妥的选择。
先更新系统包列表
在安装任何依赖前,先刷新 Ubuntu 的软件包索引,避免拿到过期的仓库信息。这一步很简单,但通常值得先执行一次:
sudo apt update
如果你接下来准备通过 apt 安装 Python 或系统级库,这一步尤其有必要。
什么时候用 apt 安装 Python 依赖
apt 适合安装系统级、基础型依赖,优点是和 Ubuntu 自带的软件包体系集成得更好,维护也更统一。像 requests、numpy 这类常见库,在官方仓库里通常都能找到对应包。

先补齐 Python3 和 pip
如果机器上还没装好 Python 3 和 pip,先执行:
sudo apt install python3 python3-pip
安装指定库的标准写法
通过 apt 安装 Python 3 库时,常见格式是:
sudo apt install python3-<library-name>
例如安装 requests:
sudo apt install python3-requests
安装后怎么验证
装完之后,可以直接用一条 Python 命令确认模块是否可导入、版本是否正常:
python3 -c "import requests; print(requests.__version__)"
需要注意的是,apt 仓库里的版本往往偏稳而不一定最新。如果项目明确要求新版本,或者你在仓库里找不到对应包,就更适合转向 pip。
什么时候改用 pip3 安装
pip 是 Python 官方推荐的包管理工具,更适合装最新版依赖,或者安装 Ubuntu 仓库里没有的第三方包。对开发项目来说,这通常也是更灵活的方式。
确认 pip3 可用
如果系统里还没有 pip3,可以先通过 apt 安装:
sudo apt install python3-pip
安装单个库与指定版本
安装单个 Python 3 库的基本格式如下:
pip3 install <library-name>
例如安装 numpy:
pip3 install numpy
如果项目要求固定版本,也可以直接指定版本号。例如安装 requests 2.25.1:
pip3 install requests==2.25.1
批量安装 requirements.txt
如果项目已经提供了 requirements.txt,最省事的做法是一次性安装全部依赖:
pip3 install -r requirements.txt
安装后验证是否生效
同样可以用 Python 直接验证,例如检查 numpy 是否安装成功:
python3 -c "import numpy; print(numpy.__version__)"
更推荐的做法:用虚拟环境隔离项目依赖
如果你同时维护多个项目,直接全局安装依赖很容易出现版本冲突。最典型的情况是:项目 A 需要 Django 3.x,项目 B 需要 Django 4.x。这时候,虚拟环境基本是默认选项。

创建虚拟环境
Python 3 内置了 venv 模块,可以直接创建隔离环境:
python3 -m venv <env-name>
例如创建名为 myenv 的环境:
python3 -m venv myenv
激活虚拟环境
进入环境后,后续使用的 pip 和已安装库都会限定在当前目录环境中:
source <env-name>/bin/activate
示例:
source myenv/bin/activate
在环境内安装依赖
激活成功后,直接使用 pip 安装即可:
pip install <library-name>
这类安装只会影响当前虚拟环境,不会改动系统全局的 Python 依赖。
退出虚拟环境
用完后执行下面这条命令即可退出:
deactivate
常见问题与处理建议
1. pip 安装提示权限不足
如果执行 pip3 install 时遇到权限问题,可以临时使用 --user 参数,把包安装到当前用户目录:

pip3 install --user <library-name>
不过从长期维护看,虚拟环境通常比直接堆到用户目录更清晰,也更不容易出问题。
2. apt 和 pip 混装导致依赖冲突
常见情况是:系统里已经通过 apt 安装了 python3-numpy,后来又用 pip 安装了 numpy。一旦路径或版本不一致,就可能出现行为不符合预期的问题。
更稳妥的做法是:
- 系统级依赖优先用
apt管理; - 项目级依赖优先放进虚拟环境;
- 尽量避免在同一套全局 Python 环境里交叉混装。
3. pip 版本过旧
如果某些包安装异常,或者新特性不可用,可以先升级 pip:
pip3 install --upgrade pip
Ubuntu 安装 Python 依赖怎么选
如果你装的是系统级、稳定优先的基础库,用 apt 往往更省心;如果你追求最新版,或者项目依赖来自 Python 生态本身,pip3 更合适;而只要涉及真实项目开发,尤其是多个项目并行维护,优先使用虚拟环境通常是最稳妥的方案。
按照这个顺序判断:先看是不是系统级依赖,再看是否需要新版本,最后决定要不要放进虚拟环境,基本就能把 Ubuntu 上的大多数 Python 依赖安装场景处理清楚。









