我想在系统上发现一个模块,我没有对全局site-packages
目录的写访问权限,也没有更改环境(PYTHONPATH
)。我试图将.pth
文件放在与正在执行的脚本相同的目录中,但似乎被忽略。例如,我创建了一个文件extras.pth
,内容如下:使用.pth文件
N:\PythonExtras\lib\site-packages
但下面的脚本,放置并运行在同一个目录,打印False
。
import sys
print r"N:\PythonExtras\lib\site-packages" in sys.paths
唯一的目录中sys.path
,而我有写权限是包含脚本的目录。是否有另一个(目前不存在的)目录,我可以放置extras.pth
并且可以看到它?有没有更好的方法来解决这个问题?
我在Windows上使用python 2.7。我在这里可以找到的所有.pth
问题都使用系统模块目录。
编辑:我已经追踪了Windows用户安装目录%APPDATA%\Python\Python27\site-packages
。我可以在那里放置一个模块,它将被导入,但如果我在那里放置一个.pth
文件,它不起作用。这真的不应该工作,或者我做错了什么?
问题是这是为了教授课程,我试图让它尽可能地接近透明。人们总是开始一个新的python并陷入困境。 'Documents and Settings'下没有一些文件夹可以算作“网站目录”吗? IIRC的各种安装程序将把东西放在那里 - 但不知道在哪里,或者是否检查了.pth文件。 – alexis 2013-03-04 19:18:31
是的,有,并且在http://docs.python.org/2/library/site.html#site.USER_SITE中记录了其他所有内容。我以为你说过你只能访问脚本目录,但现在我看到我误读了。 – BrenBarn 2013-03-04 19:28:04
是的,谢谢,我正在搞清楚那个网站。html'是看的地方。然而,在那里放置一个'.pth'似乎没有工作... – alexis 2013-03-04 19:43:06