9

可能重复:
如何使用 Python 检查文件是否存在?

我是一个学习python的初学者,但是如果有人输入了不存在的无效路径,例如Z:\而不是C:\,我想以某种方式处理这段代码,我希望它提高某种错误,现在我知道该怎么做,我只是不知道如何检查它是否无效?就像我如何让我的代码在创建路径之前检查该驱动器或路径是否存在于这台 PC 上,有没有办法在 python 中做到这一点?

website_path = input("\nEnter the absolute path for your website: ")

任何建议都会很棒,谢谢。

4

2 回答 2

7

处理此问题的 Pythonic 方式是“请求宽恕,而不是许可”:只需尝试在您获得的路径上执行您将要执行的任何操作(例如打开文件),并让您调用的函数为您引发适当的异常. 然后使用异常处理使错误消息对用户更友好。

这样,您将及时完成所有检查。事先检查是不可靠的;如果您在其他进程删除文件之前检查文件是否存在怎么办?

于 2012-09-25T13:05:17.357 回答
2

我猜你正在寻找这样的东西。您可以使用 try 和 except 来测试事情是否可行。您还可以在 except 块下处理特定的异常。(我确信 urlopen 在失败时会返回一个)

from urllib import urlopen
website_path = raw_input("\nEnter the absolute path for your website: ")
try:
    content = urlopen(website_path).read()
    print "Success, I was able to open: ", website_path 
except:
    print "Error, Unable to open: " , website_path
于 2012-09-25T13:20:07.423 回答