初始的 sys.path 来源于哪里

4 投票
1 回答
674 浏览
提问于 2025-04-17 07:50

我想弄清楚最初的 sys.path 值是从哪里来的。有一个Ubuntu系统突然(我指的是可能是某个人手动做了什么奇怪的事情)在数组的末尾丢失了一些条目。

其他主机的 sys.path 是:['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7']

而那台主机的 sys.path 是:['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages']

我其实关心的是 /usr/lib/pymodules/python2.7 这个路径。但在正常的节点上,这个路径是从哪里来的呢?

1 个回答

4

这个内容来自于 python-support 这个软件包,具体来说,是安装在 /usr/lib/python2.7/dist-packages/python-support.pth 这个文件里的。

通常来说,不应该手动往这个目录里安装任何模块。如果有软件包要往这个目录里安装模块,它应该依赖于 python-support 这个包。所以,你不需要担心它是否在 sys.path 里。

撰写回答