Python if语句错误处理

时间:2012-09-25 13:02:16

标签: python python-3.x

  

可能重复:
  How do I check if a file exists using Python?

我是一个初学者学习python,但我得到了一些代码,如果有人也输入了一个不存在的无效路径,如Z:\而不是C:\我想要处理的代码它引起某种错误,现在我知道如何去做,我只是不知道如何检查它是否会无效?比如如何让我的代码在创建路径之前检查该PC上是否存在该驱动器或路径,有没有办法在python中执行此操作?

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

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

2 个答案:

答案 0 :(得分:5)

Pythonic处理这个问题的方法是“请求宽恕,而不是允许”:只是尝试在你获得的路径上执行你要进行的任何操作(比如打开文件)并让你正在调用的函数引发适当的操作你的例外。然后使用exception handling使错误消息更加用户友好。

这样,您就可以及时完成所有检查。事先检查是不可靠的;如果你检查一个文件是否存在,就在某个其他进程删除之前呢?

答案 1 :(得分: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