python程序异常处理_python中程序的异常处理

本文详细介绍了Python中的异常处理机制,包括try...except...else和finally关键字的使用。通过实例展示了如何捕获并处理特定异常,如NameError和TypeError,并强调了finally块在确保程序资源释放(如文件关闭)方面的关键作用。此外,还讨论了异常处理在确保程序流程控制中的重要性。
摘要由CSDN通过智能技术生成

什么叫异常?

导致程序异常退出叫做异常

try...except...else

如果要抓取某种特定异常可以用except ERROR as e

else:如果程序正常执行那么会执行else里面的代码

finally:不管程序是否正常都会执行finally里面的代码块

# 异常处理的格式:

try:

CMD #要处理的程序

except:

RESULT #发现异常时你要如何处理

eg:

try:

n += 1

except:

print(‘错误‘)

结果:

错误

#如果要抓取某种特定异常可以用except ERROR as e

try:

n += 1

except NameError as e:

print(e)

结果:

name ‘n‘ is not defined

try:

n = 1 + ‘1‘

except TypeError as e:

print(e)

结果:

unsupported operand type(s) for +: ‘int‘ and ‘str‘

#else:如果程序正常执行那么会执行else里面的代码

try:

n = 1 + ‘1‘

except:

print(‘异常‘)

else:

print(‘没有异常‘)

结果:

异常

#finally 的作用:不管异常与否,都会运行finally里的代码

try:

n = 1 + ‘1‘

except:

print(‘异常‘)

finally:

print(‘最后的代码‘)

结果:

异常

最后的代码

#打开文件,如果异常 f.write(b‘中文‘),但是f = open(‘XXX.txt‘,‘r‘)没问题,因此,f还残留在内存当中。这时可以用到finally,不管程序是否成功,都关闭打开的文件

try:

f = open(‘XXX.txt‘,‘r‘)

f.write(b‘中文‘)

except:

print(‘异常‘)

finally:

f.close()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python提供了异常处理机制来处理程序的错误和异常异常处理机制涉及到以下关键字和语句:try、except、else、finally和raise。 1. try-except语句用于捕获和处理异常。在try块,我们可以放置可能会引发异常的代码。如果try块的代码引发了异常,那么程序将跳转到对应的except块,并执行其的代码来处理异常。except块可以指定捕获特定类型的异常,也可以使用通用的异常类型来捕获所有异常。 2. else语句在try块的代码没有引发异常时执行。如果try块的代码没有引发异常,那么程序将跳过except块,直接执行else块的代码。 3. finally语句用于定义无论是否发生异常都要执行的代码。无论try块的代码是否引发异常,finally块的代码都会被执行。 4. raise语句用于手动引发异常。我们可以使用raise语句来主动抛出异常,从而程序的正常执行流程。 以下是一个示例,演示了Python程序异常处理的基本用法: ```python try: # 可能引发异常的代码 num1 = int(input("请输入一个整数: ")) num2 = int(input("请输入另一个整数: ")) result = num1 / num2 print("结果为:", result) except ValueError: # 处理值错误异常 print("输入的不是有效的整数") except ZeroDivisionError: # 处理除零异常 print("除数不能为零") except Exception as e: # 处理其他异常 print("发生了一个异常:", str(e)) else: # 没有发生异常时执行的代码 print("没有发生异常") finally: # 无论是否发生异常都会执行的代码 print("程序结束") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值