Python异常处理案例

本文详细介绍了Python中的异常处理,包括自定义异常类、不同异常类型的应用(如ValueError和ZeroDivisionError)、默认和无措处理方案,以及finally块的使用。通过实例展示了如何捕获并处理各种运行时错误。
摘要由CSDN通过智能技术生成

 一 .代码

#异常处理案例

#自定义异常
class OutOfAge(Exception):
    pass

try:
    age = int(input("请输入你的年龄:"))
    if age < 18:
        raise OutOfAge

except OutOfAge:
    print('AgeError 你是未成年人。')

#常见异常处理
x = input('请输入一个数:')
y = input('请输入另一个数:')
try:
    a = int(x)
    b = int(y)
    c = a/b
except ValueError:
    print('检查输入字符串是否为可转换为整数。')
except ZeroDivisionError:
    print('除以 0 错误。')

#默认异常处理方案
try:
    file = open("不存在的文件.txt", "r")
except Exception as e:
    print(f"默认异常处理: {e}")


print("程序继续向下运行")


#主动触发异常
try:
    a = input("输入一个数:")
    #判断用户输入的是否为数字
    if(not a.isdigit()):     # isdigit()方法检测字符串是否由数字组成,返回:True  False
        raise ValueError("a 必须是数字")   # 触发 ValueError  异常
except ValueError as e:
    print("引发异常:",repr(e))

#无措处理方案
try:
    age = int(input("请输入您的年龄: "))
except ValueError:
    pass  # 无操作处理

#finally 扫尾工作处理方案
try:
    file = open("存在的文件.txt", "r")
    # 模拟一些文件操作
    data = file.read()
    print("文件内容:", data)

except FileNotFoundError:
    print("文件未找到")

finally:
    if 'file' in locals():
        file.close()

print("程序执行完毕")

 二.运行结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值