1.5 KiB
1.5 KiB
sources, brief
| sources | brief | |
|---|---|---|
|
site-packages 是 Python 环境中存放第三方包的典型目录,直接影响 import 能否找到已安装包。 |
site-packages
概念定义
site-packages 是 Python 环境中存放第三方包的典型目录。通过 pip 安装的包通常会进入当前 Python 环境对应的 site-packages,然后由 import 机制在搜索路径中找到。
这个主题连接 concepts/pip-与-PyPI、concepts/模块与-import、concepts/包与虚拟环境 和 concepts/依赖管理。
为什么它重要
“已经安装了包”不等于“当前程序能导入包”。更准确的问题是:包是否安装到了当前正在运行的 Python 解释器会搜索的 site-packages 中?
import numpy
print(numpy)
查看模块对象可以帮助确认实际加载位置。
多环境问题
系统 Python、用户安装目录和各个虚拟环境都可能有不同的 site-packages。如果 python、pip 或虚拟环境没有对齐,就会出现安装成功但导入失败的问题。
排查顺序
- 确认当前运行的是哪个
python; - 使用
python -m pip而不是不确定来源的pip; - 查看模块对象的
__file__或打印模块对象; - 检查虚拟环境是否已激活;
- 检查
sys.path是否包含预期目录。