python入门10异常处理

(1)概念:当程序遇到问题时不让程序结束,而越过错误继续向下执行

(2)错误处理语句 :

① try….except….else

   格式:
   try:
       语句t
   except 错误码 as e:
       语句1
   except 错误码 as e:
       语句2
   else:
       语句e        (注意:else语句可有可无)

逻辑:检测try语句块里面的错误,让except语句捕获错误信息并处理
1.如果当try”语句t”执行出现错误,会匹配第一个错误码,如果匹配上就执行对应“语句“
2.如果当try”语句t”执行出现错误,没有匹配的异常,错误提交到上一层的try语句
3.如果当try”语句t”执行没有出现错误,执行else下面的语句

例: try:
        print(3/0)
     except NameError as e:
        print("无变量")
     except ZeroDivisionError as e:
        print("除数为0")
     else:
        print("代码没有问题")

② 使用except而不使用任何的错误类型

             try:
                语句
             except:
                语句

③使用except带着多种异常

             try:
                语句
             except( error1 ,error2  ):
                语句    

④ try….except….finally finally语句必然执行

   格式:
   try:
       语句t
   except 错误码 as e:
       语句1
   except 错误码 as e:
       语句2
   finally:
       语句r 

⑤所有的错误都继承自BaseException,父类错误覆盖子类错误

⑥跨越多层调用,main调用了fun2,fun2调用fun1,fun1出现错误,可以捕获到错误

       def func1(num):
          print(1/num)
       def func2(num):
          func1 
       def main():
          func(0)
       try:
          main()
       except ZeroDixisionError as e:
          print("           ")

⑦断言
格式:

            assert(div!=0),"div不能为0"

逻辑:断言”div不能为0”
报错类型为 断言内容

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值