当前位置:  开发笔记 > 编程语言 > 正文

PYTHONPATH被忽略了

如何解决《PYTHONPATH被忽略了》经验,为你挑选了2个好方法。

环境:debian 4.0

Python 2.4

我的'项目'安装在:

/usr/lib/python2.4/site-packages/project.

但我想使用我的工作副本而不是安装的副本,它位于:

/家/我的/ dev /项目/ src目录

所以我做的是:

export PYTHONPATH =/home/me/dev/project/src

IPython中

import foo#在src中

foo.__file__

*/usr/lib/python2.4/site-packages/project/foo.py*

代替 :

/home/me/dev/project/src/project/foo.py

怎么会?我尝试检查pathes(完成上面的导出),我看到的是:

import sys,os

sys.path中

['','/ usr/bin','/ usr/lib/python2.4/site-package','/ home/me/dev/project/src','/ usr/lib/python24.zip', '/usr/lib/python2.4','/ usr/lib/python2.4/plat-linux2','/ usr/lib/python2.4/lib -tk','/ usr/lib/python2.4/lib-dynload','/ usr/local/lib/python2.4/site-packages','/ usr/lib/python2.4/site-package/PIL','/ var/lib/python-support/python2.4','/ usr/lib/python2.4/site-packages /IPython/Extensions','/ home/me/.ipython']

os.environ [ 'PYTHONPATH']

/家/我的/ dev /项目/ src目录

van.. 6

根据python文档,这是预期的行为:https://docs.python.org/2.4/lib/module-sys.html:

请注意,在作为PYTHONPATH结果插入的条目之前插入了脚本目录.

在python-2.6下它是不同的:http://docs.python.org/tutorial/modules.html#the-module-search-path



1> van..:

根据python文档,这是预期的行为:https://docs.python.org/2.4/lib/module-sys.html:

请注意,在作为PYTHONPATH结果插入的条目之前插入了脚本目录.

在python-2.6下它是不同的:http://docs.python.org/tutorial/modules.html#the-module-search-path



2> 小智..:

我发现了问题(当有人向我指出Python的sys.path从哪里初始化时,我很早就错过了?).

似乎easy_install创建了一个pth文件/usr/lib/python2.4/site-packages/easy-install.pth,然后由site.py加载.这将在PYTHONPATH之前的sys路径中插入site-packages路径.不太好.

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有