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

    ret = int(input("number:"))
    print(ret*"*")
    执行结果:
    number:10
    **********

    如果输入的是非数字,此时程序就会报错

    ValueError: invalid literal for int() with base 10: 'q'

    友好的报错

    try:
       [][2] ret
    = int(input("number:")) print(ret*"*") except ValueError: #当错误类型为ValueError是执行下面语句 print("输入错误,请输入一个数字")
    except IndexError:
      print("超出列表的最大长度”)
    执行结果: number:q 输入错误,请输入一个数字

    try是我们需要处理的代码

    except 后面跟一个错误类型,当代码发生错误且错误类型符合的时候,就会执行except中的代码

    except支持多分支

    万能异常

    try:
        ret = int(input("number:"))
        print(ret*"*")
    except Exception as error:
        print("老铁,出错了",error)
    执行结果:
    老铁,出错了 invalid literal for int() with base 10: 'qq'

    有了万能处理机制仍然需要把能预测到的问题单独处理

    单独处理的所有内容都应该写在万能异常之前

    try:
        ret = int(input("number:"))
        print(ret*"*")
    except ValueError:
        print("输入的数据类型有误")
    except Exception:
        print("老铁,出错了")
    else:
        print("没有异常的时候就执行else中的代码")
    执行结果:
    number:1
    *
    没有异常的时候就执行else中的代码

    finally :无论成功失败都 执行,在于return相遇时,fimally也会执行,finally通常在函数中使用

    try:
        ret = int(input("number:"))
        print(ret*"*")
    except ValueError:
        print("输入的数据类型有误")
    except Exception:
        print("老铁,出错了")
    else:
        print("没有异常的时候就执行else中的代码")
    finally:
        print("========")

    参考:

    https://www.cnblogs.com/Eva-J/articles/7281240.html#_label6
  • 相关阅读:
    第二十三篇 jQuery 学习5 添加元素
    第二十二篇 jQuery 学习4 内容和属性
    第二十一篇 jQuery 学习3 特效效果
    第二十篇 jQuery 初步学习2
    第十九篇 jQuery初步学习
    第十八篇 JS传参数
    第十七篇 JS验证form表单
    第十六篇 JS实现全选操作
    第十五篇 JS 移入移出事件 模拟一个二级菜单
    第十四篇 JS实现加减乘除 正则表达式
  • 原文地址:https://www.cnblogs.com/wanglan/p/9583983.html
Copyright © 2011-2022 走看看