从python中的相对路径中查找绝对路径

时间:2011-10-26 21:43:05

标签: python search path

我的问题几乎就是标题所暗示的。我的研究让我尝试这样的事情:

import os
pathname = os.path.abspath("some/relative/directory")
print pathname

这个问题是每当我做这样的事情时,它只返回我在python目录之前给出的相对目录。例如:

C:\ Python27 \一些\相对\目录

甚至不是我计算机上的现有目录。我知道python解释器默认搜索工作目录,但我想做的是让它在我的整个计算机上搜索包含我指定的部分目录的绝对路径。

这个的目的是让我创建一个exe(使用py2exe),可以在任何计算机上搜索任意目录。有没有在标准库中或通过一些可用模块执行此操作的方法 - 或者我是否必须自己实现该算法?

2 个答案:

答案 0 :(得分:3)

abspath基于getcwd。最有可能的是,您当前的工作目录根本不是您所期望的。

您可以更改启动脚本的代码,手动更改目录,或只使用Python中的chdir

答案 1 :(得分:0)

你试过os.path.realpath("my/relative/dir")吗?实际上,目录似乎不存在,但如果确实存在,它将解析符号链接等等。