错误目录中的嵌入式Python搜索模块

错误目录中的嵌入式Python搜索模块,python,python-module,Python,Python Module,我已经在一台机器的$HOME/local中安装了Python 2.6.7,该机器在/usr中已经有一个默认的Python(我在这台机器上没有管理员访问权限)。默认Python以32位编译,我的本地安装是64位。出于一些未知的原因,我的本地Python库(我在C程序中称之为嵌入式Python解释器)在默认(错误)安装中搜索模块 这是“导入随机”的结果 得到 ['/tmp/work/mdorier1/local/lib/python26.zip', '/tmp/work/mdorier1/loca

我已经在一台机器的$HOME/local中安装了Python 2.6.7,该机器在/usr中已经有一个默认的Python(我在这台机器上没有管理员访问权限)。默认Python以32位编译,我的本地安装是64位。出于一些未知的原因,我的本地Python库(我在C程序中称之为嵌入式Python解释器)在默认(错误)安装中搜索模块

这是“导入随机”的结果

得到

['/tmp/work/mdorier1/local/lib/python26.zip', 
'/tmp/work/mdorier1/local/lib/python2.6', 
'/tmp/work/mdorier1/local/lib/python2.6/plat-linux2', 
'/tmp/work/mdorier1/local/lib/python2.6/lib-tk', 
'/tmp/work/mdorier1/local/lib/python2.6/lib-old', 
'/usr/lib/python2.6/lib-dynload', 
'/tmp/work/mdorier1/local/lib/python2.6/site-packages']
我注意到其中一个路径确实指向Python的默认安装。因此,我的问题是: -为什么会在这里显示此路径,因为本地安装与默认安装无关? -我如何改变它(以干净和永久的方式)?此路径应该是本地安装中lib dynload的路径


谢谢

在系统Python之前,PATH变量中可能没有Python的bin目录

或者您只是错误地编译了Python,没有使用:

./configure --prefix=/tmp/work/mdorier1/local

所以现在它认为它的文件在其他地方。

注意:在调用我的程序之前使用PYTHONHOME=/tmp/work/mdorier1/local实际上可以工作,但我仍然想知道为什么会出现这个默认位置,并以适当的方式更改它。是的,PATH包含Python的默认版本,但不是我的:我用它的完整路径调用我的。所以我想这就是原因。谢谢
['/tmp/work/mdorier1/local/lib/python26.zip', 
'/tmp/work/mdorier1/local/lib/python2.6', 
'/tmp/work/mdorier1/local/lib/python2.6/plat-linux2', 
'/tmp/work/mdorier1/local/lib/python2.6/lib-tk', 
'/tmp/work/mdorier1/local/lib/python2.6/lib-old', 
'/usr/lib/python2.6/lib-dynload', 
'/tmp/work/mdorier1/local/lib/python2.6/site-packages']
./configure --prefix=/tmp/work/mdorier1/local