Python 异常处理

1. 相关定义

     异常:即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。

     异常处理:try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。否则程序会终止执行。

2. 语法

try:
  <执行的代码>

except:              #不带任何异常类型--捕获所有发生的异常,但无法识别出具体的异常信息
   <输出语句>

except <异常类型1>:          # 匹配单个异常类型;格式可以用空格或者小括号
  <输出语句>

except(异常类型1,异常类型2...)     # 匹配多个异常类型;异常类型放在小括号里
  <输出语句>

except Exception as e:         # 异常的父类,可以捕获所有的异常
   print(e)                    # 打印异常信息:

else:  
  <输出语句>                    # 如果没有异常发生,会执行 else

finally:     
  <输出语句>                    # 无论try语句是否有异常,最后都要执行的代码。

3.栗子

    1. except 携带参数

try:
    print('try_start')
    a = b
    print('try_end')
except ZeroDivisionError:
    print('except ---zero')
except(ArithmeticError):
    print('except ---Arith')
except(NameError,ArithmeticError):
    print('except ---NameError')
else:
    print('else ---')
finally:
    print('finally ---')

print('程序执行完成')

------------执行结果---------------
try_start
except ---NameError
finally ---
程序执行完成

     2. Exception 捕获所有异常

try:
    1 / 0
except Exception as e:
    # 异常的父类,可以捕获所有的异常
    print("0 不能被除")
    print(e)  # 打印异常信息: division by zero
else:
    # 保护不抛出异常的代码 -- 如果没有异常发生,会执行 else
    print("没有异常")
finally:
    print("无论try语句是否有异常,finally 都要执行")

----------------执行结果--------------------------------
0 不能被除
division by zero
无论try语句是否有异常,finally 都要执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值