对于不同的Linux发行版(Debian,Redhat,Slackware,...),python标准库和dist-packages的路径是不同的?

Ben*_*ey4 10 python linux path linux-distro

我的问题假设你在那些不同的Linux发行版上使用相同的python版本.我也从我的问题中排除了虚拟环境.

我使用基于Debian的发行版Ubuntu.那里有python标准库的路径(用python编写的模块/包)/usr/lib/python2.7."外部"python包的路径是/usr/local/lib/python2.7/dist-packages.

非常感谢以系统独立的方式获得这些路径.

EDIT1

我发现:

>>> from distutils.sysconfig import get_python_lib
>>> print get_python_lib()
/usr/local/lib/python2.7/dist-packages
Run Code Online (Sandbox Code Playgroud)

>>> print get_python_lib(standard_lib=True)
/usr/lib/python2.7
Run Code Online (Sandbox Code Playgroud)

EDIT2

我认为第一次编辑中的方法已被弃用,因为我只能找到它并直到python2.5文档.新方法(在2.7文档中):

>>> import sysconfig
>>> sysconfig.get_path_names()
('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', 'scripts', 'data')
>>> print sysconfig.get_path('platlib')
/usr/local/lib/python2.7/dist-packages
Run Code Online (Sandbox Code Playgroud)

我还没有找到如何/usr/lib/python2.7使用sysconfig 查找.现在我将使用已弃用的方法,并假设这会产生预期的结果.

Fed*_*lev 7

是的,它有所不同,例如,在CentOS 5.6中,放置了python外部模块/usr/lib/python2.6/site-packages.其实dist-packagesdebian特定的目录.