在 Debian 上“缺 Python 模块”是一个很常见的问题,通常不是系统坏了,而是Debian 的包管理理念和 Python 生态的差异导致的。下面从几个主要原因说明。
Debian 安装 Python 时,只保证:
不会自带大量第三方模块
例如:
python3
可用,但:
import requests
import numpy
import django
通常都会报错。
✅ 正确方式:
apt 安装 Debian 打包的模块pip / venv 安装Debian 强烈不建议用 pip 直接装到系统 Python:
pip install xxx # 不推荐(可能破坏系统)
原因:
✅ 推荐做法:
python3 -m venv venv
source venv/bin/activate
pip install requests
Debian 的包命名规则:
python3-例如:
| PyPI | Debian |
|---|---|
| requests | python3-requests |
| numpy | python3-numpy |
| pillow | python3-pil |
安装方式:
sudo apt install python3-requests
一些情况:
此时只能:
pip install 包名
(在虚拟环境中)
Stable 版本(如 Debian 12):
如果你需要新特性:
venv + pipdeadsnakes(Ubuntu)检查:
which python
which python3
有时:
python 不存在(Debian 默认只有 python3)Debian 不是“缺 Python 模块”,而是“不替你乱装模块”
它把选择权交给你:apt 或 venv+pip。
如果你愿意,可以告诉我: