基础DAY11-异常抛出及捕获

完整的异常语法
try:
# 提示用户输入一个整数
num = int(input("请输入一个整数"))
# 使用 8 除以用户输入的整数并且输出
result = 8 / num
print(result)
except ValueError:
# 针对错误类型1,对应的代码处理
print("不是整数")
except Exception as result:
# 未知错误,打印错误信息
print("未知错误 %s" % result)
else:
# 没有异常才会执行的代码
print("没有异常才会执行的代码")
pass
finally:
# 无论是否有异常,都会执行的代码
print("无论是否有异常,都会执行的代码")

def demo1():
    return  int(input("请输入一个整数"))
def demo2():
    return demo1()
# 利用异常的传递性 ,在主程序捕获异常
try:
    print(demo2())
except Exception as result:
    print("未知错误%s " % result)
else:
    pass
finally:
    pass
主程序增加异常捕获

def input_password():
# 提示用户输入密码
pwd = input("请用户输入密码")
# 判断密码长度 > = 返回用户输入的密码,< 8 主动抛出异常
if len(pwd) < 8:
# 抛出异常
print("主动抛出异常")
# 创建异常对象-可以使用错误信息字符串作为参数
ex =Exception("密码长度不够")
raise ex
else:
# 返回输入的密码
return pwd

# 捕获异常
try:
print(input_password())
except Exception as result:
print(result)

猜你喜欢

转载自www.cnblogs.com/joycezhou/p/11402546.html