Python基础核心教程(032)——异常处理


版权声明

  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl

异常概述

在开发过程中为了处理和应对各种异常情况,需要对程序中发生的异常进行处理。

语法如下:

try:
    # 尝试执行的代码
    pass
except 错误类型1:
    # 针对错误类型1的处理
    pass
except 错误类型2:
    # 针对错误类型2的处理
    pass
except (错误类型3, 错误类型4):
    # 针对错误类型3和错误类型4的处理
    pass
except Exception as result:
    # 针对未知类型错误的处理
else:
    # 无异常发生时执行的代码
    pass
finally:
    # 无论是否有异常发生均执行的代码

在实际开发中finally常用于资源释放,例如:关闭数据库连接、关闭文件等。

示例如下:

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:异常
"""

try:
    number = int(input("请您输入一个整数:"))
    result = 4 / number
    print(result)
except ValueError:
    print("请输入正确的整数")
except ZeroDivisionError:
    print("除0错误")
except Exception as error:
    print("程序发生错误 %s" % error)
else:
    print("程序正常执行,未发生异常")
finally:
    print("程序运行完毕,结果不一定正确")

在这里插入图片描述

自定义异常

在开发中,除了在程序执行出错Python解释器抛出异常外;我们还可以根据程序自身的业务需求主动抛出异常。

步骤如下:

  • 1、创建Exception类型的异常对象
  • 2、使用raise关键字抛出异常对象

示例如下:

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:异常
"""


# 定义函数
def checkPassword():
    password = input("请输入长度不小于6位的密码:")
    if len(password) >= 6:
        print("密码长度符合要求")
        return password
    # 生成异常
    exception = Exception("密码长度错误")
    # 抛出异常
    raise exception


try:
    result = checkPassword()
    print("您输入的密码是:%s" % result)
except Exception as error:
    print(error)
finally:
    print("程序执行完毕")

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lfdfhl/article/details/106142167
今日推荐