os.getcwd()抛出异常

时间:2011-06-01 01:21:57

标签: python

我遇到当前目录无效的情况(即某些程序删除它时)。我的Python脚本调用os.getcwd(),它以以下异常终止

OSError: [Errno 2] No such file or directory

理想情况下,我的脚本会在这种情况下自动进入父目录。 推荐的策略何时实施?

注意,如果我从shell中尝试ls,我会得到ls: cannot open directory .: Stale NFS file handle

1 个答案:

答案 0 :(得分:2)

理想情况下,我的脚本会在这种情况下自动进入父目录。推荐的策略何时实现?

只需使用 try/except块,这就是我们拥有它们:)

try:
    os.getcwd()
except OSError:
    os.chdir("..")
    os.getcwd()
或类似的东西......

[编辑]无论如何,我猜这种情况对你的应用程序来说真的很糟糕 - 删除了dir,或者破坏了NFS连接等等,这可能不应该仅仅通过改变dir来实现 - 这当然取决于app ...