zoukankan      html  css  js  c++  java
  • 01,异常处理

    1,什么时候用异常处理,为什么用
    异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。

    一般情况下,在Python无法正常处理程序时就会发生一个异常。

    异常是Python对象,表示一个错误。

    当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。

    异常处理的表现形式


    --------------------------------------------------------割割更健康-------------------------------------------------
    try:
    代码
    except 异常类型:
    一旦检测到异常代码,就会执行这

    ss='lqz'
    try:
    raise KeyError('主动触发异常')
    int(ss)

    except KeyError as e:
    print(e)

    except IndexError as e:
    print(e)

    #一般exception是万能的,单独用一个就行,但是都放在最后捕捉不知道会发生的错误类型
    except Exception as e: #Excrption是例外的意思
    print('你是傻子吗')
    print(e)

    else:
    print('try 代码块里没有异常,会执行我')

    finally: #finally 必须放在最后,等同f.cloce() 无论是否异常都会执行
    print('无论如何都会执行')


    -------------------------------------------------------------------------------------------
    class a(BaseException):
    def __init__(self, msg):
    super().__init__()
    self.msg = msg

    def __str__(self):
    return self.msg


    # raise TypeError('这是类型错误')
    raise a('我自己的异常')
    #
    -------------------------------------------------------------------------------------







    如果错误发生的条件是可预知的,我们需要用if进行处理:在错误发生之前进行预防
    age=18
    guess= input('请输入年龄')
    if guess.isdigit():#age不为数字的时候,就会出错,这个我们是可以预测的,所以要用if判断处理调
        guess =int(guess)
        if guess ==age:
            print('猜对了')

     如果错误发生的条件是不可预知的,则需要用到try...except:在错误发生之后进行处理

    # 比如从网上爬数据,放到一个列表里,列表有两个数据,你想要取第三个数据,就会出错,列表里的值,不可预知,就要用try...except
    ll=['数据1','数据2']
    try:
        ll[2]
    except IndexError as e:
        print(e)
  • 相关阅读:
    2017ICPC沈阳赛现场赛 L-Tree (dfs)
    2019西北工业大学程序设计创新实践基地春季选拔赛 D(卢卡斯定理)
    Codeforces Round #454 (Div. 1) CodeForces 906D Power Tower (欧拉降幂)
    模板
    洛谷
    模板
    洛谷
    洛谷
    模板
    模板
  • 原文地址:https://www.cnblogs.com/lijieshi/p/9263703.html
Copyright © 2011-2022 走看看