要捕获异常,可以使用 try/except 语句。 try/except 语句用于检测try 语句块中的错误,以便except 语句捕获并处理异常信息。
如果你不想在发生异常时结束程序,只需在 try 中捕获它即可。
语法:
以下为简单的try....except...else的语法:
try:
<语句> #运行别的代码
except <名字>:
<语句> #如果在try部份引发了'name'异常
except <名字>,<数据>:
<语句> #如果引发了'name'异常,获得附加的数据
else:
<语句> #如果没有异常发生
try 的工作方式是,当你开始一个 try 语句时,python 会在当前程序的上下文中标记它,这样当出现异常时你可以回到这里,try 子句首先执行,接下来发生的事情取决于执行时间是否发生异常。
如果在try之后的语句执行时出现异常,python会跳回到try并执行第一个匹配异常的except子句,异常处理完后,控制流过整个try语句(除非有新的异常在处理异常时抛出)。例外)。
如果try后面的语句出现异常,但是没有匹配的except子句,则异常会被传递到上层try,或者程序的顶层(这会结束程序并打印默认错误信息) .
如果 try 子句执行时没有出现异常,python 会执行 else 语句之后的语句(如果有 else 的话),然后控制流过 try 语句。
使用except而不带任何异常类型
你可以不带任何异常类型使用except,如下实例:
try:
正常的操作
......................
except:
发生异常,执行这块代码
......................
else:
如果没有异常执行这块代码
上述方式 try-except 语句捕获所有发生的异常。但这不是一个好办法,我们无法通过这个程序识别出具体的异常信息。因为它会捕获所有异常。
使用except而带多种异常类型
你还可以使用相同的 except 语句来处理多个异常消息,如下所示:
try:
正常的操作
......................
except(Exception1[, Exception2[,...ExceptionN]]]):
发生以上多个异常中的一个,执行这块代码
......................
else:
如果没有异常执行这块代码
try-finally 语句
try-finally 语句无论是否发生异常都将执行最后的代码。
try:
<语句>
finally:
<语句> #退出try时总会执行
raise
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python如何降维11/08
- ♥ 为什么python下载这么慢08/22
- ♥ 如何在python中找到一维积分?11/07
- ♥ 如何在python中找到除数09/10
- ♥ python sys模块有什么用12/20
- ♥ python threading线程同步的实现方法12/18
内容反馈