【python】dist-packages和site-packages的区别

时间:2023-03-08 16:40:01

一、dist-packages和site-packages的区别

  1. sudo apt-get install 安装的package存放在/usr/lib/python2./dist-packages目录中
  2. pip 或者 easy_install安装的package存放在/usr/local/lib/python2./dist-packages目录中
  3. 手动从源代码安装的package存放在site-packages目录中
  4. 自己手动升级或安装的python,通过pip或者easy_install安装的package存放在/usr/local/lib/python2./site-packages 目录中
  5. 非root用户,通过pip或者easy_install安装的package存放在~/.local/lib/python2./site-packages

The dist-packages is a Debian-specific convention that is also present in its derivatives, like Ubuntu. Modules are installed to dist-packages when they come from the Debian package manager into this location:

/usr/lib/python2./dist-packages

Since easy_install and pip are installed from the package manager, they also use dist-packages, but they put packages here:

/usr/local/lib/python2./dist-packages

From the Debian Python Wiki:

dist-packages instead of site-packages. Third party Python software installed from Debian packages goes into dist-packages, not site-packages. This is to reduce conflict between the system Python, and any from-source Python build you might install manually.

This means that if you manually install Python from source, it uses the site-packages directory. This allows you to keep the two installations separate, especially since Debian and Ubuntu rely on the system version of Python for many system utilities.

二、查看python的库路径

terminal进入python命令行界面

>>>from distutils.sysconfig import get_python_lib
>>>print(get_python_lib())