有两种类型的站点包目录, 全局 和 _每个用户_。 运行时, 全局 站点包(“ dist-packages ”)目录列在 sys.path 中: python -m site 要获得更简洁的列表,请从 Python 代码中的 站点模块 运行 getsitepackages : python -c 'import site; print(site.getsitepackages())' 注意: 在虚拟环境中 getsitepackages 不适用于 旧版本的 virtualenv , sys.path 从上面将正确列出 virtualenv 的 site-packages 目录。在 Python 3 中,您可以改用 sysconfig 模块: python3 -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])' 每个用户 的站点包目录( PEP 370 )是 Python 安装本地包的位置: python -m site --user-site 如果这指向一个不存在的目录,请检查 Python 的退出状态并查看 python -m site --help 以获得解释。 提示: 运行 pip list --user 或 pip freeze --user 会为您提供 每个用户 安装的所有站点包的列表。 实用技巧 <package>.__path__ 让您识别特定包裹的位置:( 详情) $ python -c "import setuptools as _; print(_.__path__)" ['/usr/lib/python2.7/dist-packages/setuptools'] <module>.__file__ 让您识别特定模块的位置:( 区别) $ python3 -c "import os as _; print(_.__file__)" /usr/lib/python3.6/os.py 运行 pip show <package> 以显示 Debian 风格的软件包信息: $ pip show pytest Name: pytest Version: 3.8.2 Summary: pytest: simple powerful testing with Python Home-page: https://docs.pytest.org/en/latest/ Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others Author-email: None License: MIT license Location: /home/peter/.local/lib/python3.4/site-packages Requires: more-itertools, atomicwrites, setuptools, attrs, pathlib2, six, py, pluggy 原文由 Peterino 发布,翻译遵循 CC BY-SA 4.0 许可协议
>>> import site; site.getsitepackages() ['/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages'] (或者只是第一项 site.getsitepackages()[0] ) 原文由 eudoxos 发布,翻译遵循 CC BY-SA 3.0 许可协议
有两种类型的站点包目录, 全局 和 _每个用户_。
sys.path
中:要获得更简洁的列表,请从 Python 代码中的 站点模块 运行
getsitepackages
:注意: 在虚拟环境中 getsitepackages 不适用于 旧版本的
virtualenv
,sys.path
从上面将正确列出 virtualenv 的 site-packages 目录。在 Python 3 中,您可以改用 sysconfig 模块:如果这指向一个不存在的目录,请检查 Python 的退出状态并查看
python -m site --help
以获得解释。提示: 运行
pip list --user
或pip freeze --user
会为您提供 每个用户 安装的所有站点包的列表。实用技巧
<package>.__path__
让您识别特定包裹的位置:( 详情)<module>.__file__
让您识别特定模块的位置:( 区别)pip show <package>
以显示 Debian 风格的软件包信息: