# 捕获异常
# DATE: 20190706
# DESCRIPTION: 捕获异常(try except)
try:
num = int(input("please input an integer: "))
res = 10 / num
print(res)
except ValueError:
print("值错误")
# except ZeroDivisionError:
# print("除0错误")
# Exception 捕获未知错误
except Exception as unknown_err:
print("unknown error: %s" % unknown_err)
else: # 没有异常才会执行的代码
print("==> success !")
finally: # 无论是否有异常,都会执行的代码
print("==> anyway...")
# 主动抛出异常
# DATE: 20190706
# DESCRIPTION: 主动抛出异常
# 用户输入密码,长度<8抛出异常,长度>=8返回异常
def input_password():
pwd = input("请输入密码:")
if len(pwd) >= 8:
return pwd
# 创建异常对象
exc = Exception("密码长度不够")
# 主动抛出异常
raise exc
try:
print(input_password())
except Exception as unknown_err:
print("未知异常:%s" % unknown_err)