Python教程9,,Python教程9 


Python教程9

  1.异常

# -*-coding:utf-8-*-"""1.异常:程序运行时,如果python解释器遇到一个错误,会停止程序的执行,并提示一些错误的信息这就是异常2.程序停止执行并且提示错误信息这个动作,我们通常称之为:抛出异常3.程序开发时,很难将所有的特殊情况都处理到,通过异常捕获,可以针对突发事件做几种处理,从而保证程序的稳定性和健壮性""""""捕获异常的语法:1.如果在程序开发中,对某些代码的执行不能确定是否正确,可以增加try()来捕获异常2.语法格式如下:try:    尝试执行的代码except:    出现错误的处理"""# try语法,执行错误不会停止程序的执行try:    # 不确定能否正确执行的代码    num = int(input("请输入整数:"))    print("你的输入:%d" % num)except:    # 错误代码的处理    print("请输入正确的整数")print("-" * 50)# 错误类型的捕获:# 用户输入整数,使用8除以输入整数,并且输出print("错误类型的捕获演示")try:    num1 = int(input("请输入整数:"))    result = 8 / num1    print(result)except ZeroDivisionError:  # 报错类型的第一个单词    print("除0错误")except ValueError:    print("请输入正确的整数:")# 捕获未知错误print("捕获未知错误演示----------")try:    num2 = int(input("请输入整数:"))    result = 8 / num2    print(result)except ValueError:    print("请输入正确的整数:")except Exception as result1:    print("未知错误 %s" % result1)"""异常捕获的完整语法:try:    尝试执行的代码except 错误类型1    错误处理except (错误类型1,错误类型2)    错误处理except Exception as result:    未知错误处理else:    没有异常时执行的代码finally:    无论是否异常,都会执行的代码"""print("完整异常语法演示----------")try:    print("尝试执行。。。。")    num3 = int(input("请输入整数:"))    result = 8 / num3    print(result)except ValueError:    print("请输入正确的整数:")except Exception as result:    print("未知错误 %s" % result)else:    print("尝试成功")finally:    print("无论是否成功,都会执行的代码")

  2.异常的传递,主动抛出异常

# -*-coding:utf-8-*-"""异常的传递:当函数/方法执行出现异常,会将异常传递给函数/方法的调用一方如果传递到主程序,仍然没有异常处理,程序才会终止提示:    1.在开发中,可以在主函数中增加异常捕获    2.而主函数调用其他函数,只要出现异常都会传递到主函数的遗产捕获中    3.这样不需要代码中,增加大量的异常捕获,保证代码的整洁"""def demo1():    return int(input("请输入整数:"))def demo2():    return demo1()# 利用异常的传递性,在主程序捕获异常try:    print(demo2())except ValueError:    print("请输入正确的整数:")except Exception as result:    print("未知错误 %s" % result)"""抛出raise异常:    在开发中,除了代码执行出错,python解释器抛出异常错误外,还可以根据应用程序的业务需求,主动抛出异常抛出异常:python中提供Exception异常类1.创建一个Exception对象2.使用raise关键字抛出异常示例:提示用户输入密码,若长度小于8,抛出异常"""print("**********主动抛出异常演示************")def input_password():    # 提示输入密码    pwd = input("请输入密码:")    # 判断密码长度>=8    if len(pwd) >= 8:        return pwd    # 如果<8,主动抛出异常    print("主动抛出异常")    # 创建异常对象    ex = Exception("密码长度不够")    # 主动抛出异常    raise extry:    print(input_password())  # 提示不用try去捕获异常,此行代码报什么错误except Exception as result:    print(result)

Python教程9

评论关闭