自定义一个异常类型,由raise抛出

自定义一个异常类型,由raise抛出:

"""需求:用户输入的密码长度必须要>=6"""


# 自定义异常,继承自Exception
class ShortInputError(Exception):
    def __init__(self, length):
        super().__init__()  # 继承父类Exception的init方法
        self.length = length
        self.least_length = 6   # 限定最小字符长度为6

    def __str__(self):      # 格式化print输出的内容
        return "您输入的字符长度为{},系统要求输入的字符最小长度为{},请重新输入...".format(self.length,self.least_length)


def password_len():
    try:
        input_str = input("请输入密码:")
        if len(input_str) < 6:      # 判断用户输入的字符长度是否合规
            raise ShortInputError(len(input_str))     # 抛出异常
    except Exception as e:
        print(e)
    finally:
        print("代码执行完成!!!")


# 调用函数
password_len()

代码执行结果:

请输入密码:123
您输入的字符长度为3,系统要求输入的字符最小长度为6,请重新输入...
代码执行完成!!!

版权声明:本文为weixin_46106427原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。