异常处理(Python)

72 阅读1分钟
  • 单个捕获错误案例
    -- try
    -- except
  • 捕获多次不同的错误的案例
    -- try
    -- except
    -- else
    -- finally
  • 传递错误并捕获异常
    -- except Exception as result
  • 主动抛出异常
    -- ex = Exception("不满足8位数字")
    -- raise ex
  1. 单个捕获错误案例
try:
    num = int(input("请输入一个整数:"))
except:
    print("请输入正确的整数")

# print(num)
print("*" * 50)
  1. 捕获多次不同的错误的案例
try:
    num1 = int(input("输入整数:"))
    result = 8/num1
    print(result)
except ValueError:
    print("请输入正确的整数")
except Exception as result:
    print("未知错误 %s " % result)
else:
    print("尝试成功")
finally:
    print("无论成功失败都会执行")
  1. 传递错误并捕获异常
def demo1():
    return int(input("请输入整数"))


def demo2():
    return demo1()

try:
    print(demo2())
except Exception as result:
    print("未知错误 %s" % result)
  1. 主动抛出异常
def input_number():

    """创建输入内容"""
    pwd = input("请输入整数")

    # 判断整数len 是不是大于等于 8
    if len(pwd) >= 8:
        return pwd

    ex = Exception("不满足8位数字")
    raise ex


try:
    print(input_number())
except Exception as result:
    print(result)       # 不满足8位数字