python进阶(异常处理)

一、异常处理基本知识:

     1、代码异常的特性:

               python程序一旦发生错误,就从错误的位置停下来了,不会执行后面的内容。

二、异常处理语句(try     except      else      finally):

  • 1、try  我们需要处理的代码块,try中一旦出现异常代码,异常代码后面的代码不会执行,直接跳转到except语句
  •      判断
  • 2、except 后面跟一个 错误类型,当代码错误类型与其相符合时,执行except语句。可以通过 “except 错误类型 as
  •       变量”  语句赋值  变量。
  • 3、except 可以多个并列并且没有次数限制
  • 4、万能报错处理 :    except Exception :    ;常见报错集合  except BaseException:
  •    单独处理异常类型通常放在万能异常之前。
  • 5、finally 不管代码是否异常 都会执行,常用函数中与return并列的情况,优先执行finally语句,然后return。

     1、简单的异常处理:

try:
    a                               未定义的变量,NameError

    print('我不会执行')                该代码不会执行

except NameError:                 try语句代码异常 且 代码错误符合时执行
    print('语法错误')
else:
    print('try里面代码 没有错误时执行。')

print(22)                         print('不会执行')不会执行,跳转到下面继续执行

结果:
语法错误
22

    2、综合的异常处理:

        (1)代码:可以用as 将错误赋值给变量。

print('开始执行!')
try:
    a
    1/0
    [][3] = 0
    print('不会执行')
except NameError as error:               # except类似于if else ,一旦有异常条件满足,不会执行其他条件。
    print('未定义变量错误!',error)
except Exception:
    print('万能异常处理方式!')
else:
    print('try代码没有问题')
finally:
    print('是否异常我都会执行》》》》')
print('异常处理后代码继续执行')

结果:

开始执行!
未定义变量错误! name 'a' is not defined
是否异常我都会执行》》》》
异常处理后代码继续执行

        (2)执行过程分析:

     3、finally在函数中的作用:


def func():
    try:
        f = open('file.txt','r')
        a                        # 错误
        return True
    except :
        return False              # 执行return之前,要将finally语句中的内容执行一遍。
    finally:
        print('执行finally语句了')
        f.close()
print(func())

结果:

执行finally语句了
False

三、常见的错误类型:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值