Python异常处理案例

 一 .代码

#异常处理案例

#自定义异常
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("程序执行完毕")

 二.运行结果

 

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值