zoukankan      html  css  js  c++  java
  • Python 异常处理和断言

    try:

      可能出现异常的代码

    except 异常类型:

      捕获到异常之后的处理方案

    finally:

      不管try里有没有异常它都会执行

    try:
        # try下面写有可能会出现异常的代码
        score = int(input("请输入成绩:"))
        # 因为input获取的都是字符串,int()是强制转换成int类型,英文字符等是无法转换成int类型的字都会报错
    except Exception:
        # 处理异常之后的处理,
        print("用输入的数据不符合规范,默认给0分")
        score = 0
    else:
        # 代码没有出现异常,执行else中的代码
        print("代码没有出现异常,执行else")
    finally:
        # 不管代码有没有出现异常都会去执行的代码
        print("finally不管代码有没有出现异常都会去执行的代码")
        print("分数录入为:{}".format(score))

    主动抛出异常语法格式:raise 异常类型(异常信息)

    try:
        # try 有可能发生异常的代码
        a = 1111
        print(b)
    except NameError as msg:
        print(msg)
        raise msg  # 捕获后运行不会报错,再抛出就会看到异常
    else:  # try里面的代码都是正常执行,没有发生任何异常,就会执行这里
        print("程序运行正常!")
    finally:
        print("不管有没有异常,我都会被执行!")

    assert 表达式,提示信息  (也可以没有提示信息)

    # assert:断言
    res1 = {'code': 1, 'msg': '登陆成功'}
    res2 = {'code': 0, 'msg': '登陆失败'}
    
    # 加一个断言,判断结果是否如预期,如果与预期不一致,会报出断言异常并打印提示信息
    assert res1 == res2, '该用例不通过!'
    以前-好记性不如烂笔头 现在-好记性不如烂键盘
  • 相关阅读:
    input 框变成不可编辑的。
    git 首次往远程仓库提交项目过程。(使用idea操作)
    nacos 导入项目配置(yml文件)步骤
    instr MySQL数据库函数用法
    遍历 map 的方法
    基于分布式思想下的rpc解决方案(1)
    深入理解通信协议-(1)
    Tomcat(3)--性能优化
    并发编程(5)--并发容器
    并发编程(4)--显示锁和AQS
  • 原文地址:https://www.cnblogs.com/gexbooks/p/14919656.html
Copyright © 2011-2022 走看看