try..except我们尝试读取用户的一段输入。按Ctrl-d,看一下会发生什么。>>>s=raw_input('Entersomething-->')Entersomething-->Traceback(mostrecentcalllast):File&q...
try..except 我们尝试读取用户的一段输入。按Ctrl-d,看一下会发生什么。>>> s = raw_input('Enter something --> ')Enter something --> Traceback (most recent call last): File "", line 1, in ?EOFError Python引发了一个称为EOFError的错误,这个错误基本上意味着它发现一个不期望的 文件尾 (由Ctrl-d表示)接下来,我们将学习如何处理这样的错误。处理异常 我们可以使用try..except语句来处理异常。我们把通常的语句放在try-块中,而把我们的错误处理语句放在except-块中。例13.1 处理异常#!/usr/bin/python# Filename: try_except.pyimport systry: s = raw_input('Enter something --> ')except EOFError: print '\nWhy did you do an EOF on me?' sys.exit() # exit the programexcept: print '\nSome error/exception occurred.' # here, we are not exiting the programprint 'Done' (源文件:code/try_except.py)输出 $ python try_except.pyEnter something -->Why did you do an EOF on me?$ python try_except.pyEnter something --> Python is exceptional!Done它如何工作 我们把所有可能引发错误的语句放在try块中,然后在except从句/块中处理所有的错误和异常。except从句可以专门处理单一的错误或异常,或者一组包括在圆括号内的错误/异常。如果没有给出错误或异常的名称,它会处理 所有的 错误和异常。对于每个try从句,至少都有一个相关联的except从句。如果某个错误或异常没有被处理,默认的Python处理器就会被调用。它会终止程序的运行,并且打印一个消息,我们已经看到了这样的处理。你还可以让try..catch块关联上一个else从句。当没有异常发生的时候,else从句将被执行。我们还可以得到异常对象,从而获取更多有个这个异常的信息。这会在下一个例子中说明。 我看了半天也没看明白这个处理异常的程序是怎么工作的,怎样能得到上面说给出的输出,我按照他的样子写,结果运行后什么也没有;还有\n在PYTHON程序中是什么作用,我见过好几次,可是总觉得不输入\n似乎对程序没影响(除了这个程序)。
展开