try&except

本文详细介绍Python中异常处理的基本概念及应用,包括try...except...结构的使用,如何捕获特定类型的异常,以及如何利用异常信息进行错误定位。同时,文章还介绍了finally子句和else子句的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

‘’’
从现在开始呢,就要写开始学习异常了
所以,要怎么处理异常呢
try…except…
具体语法如下
try:
自己觉得可能会出现问题的代码
except:
处理错误的方式
‘’’

for example

try:
print(a)#这块就是错误
except:
print(“你好像整错啥了吧”)

‘’’
错误的基类
try:
print(a)
except NameError:(这里的NameError就是一个错误基类,命名错误的基类,所以也就只能处理命名错误,如果不是命名错误,
处理不了)
print(“adsadad”)
所以这样是不是很麻烦,别急,有个可以处理所有常规错误的基类,Duang,就是Exception啦
just like this
try:
print(a)
except Exception:
print(“出错了”)
虽然说这个基类呢,可以帮你处理问题,但是咧,还是没告诉你哪儿错了,那要怎么办呢,白着急啊,可以这样干
try:
print(a)
except Exception as e:
print(“出错了,错误类型是{}”.format(type(e)))
或者也可以不要这个type,直接输出e的提示也可以,具体情况具体分析即可
‘’’
try:
print(a)
print(“this”)#看啊,这个不会被执行,为啥呢,因为上一个语句报错了啊
except Exception as e:
print(“出错了,错误类型是{}”.format(type(e)))
print(“this”)#这个是可以执行的,还有一种方法
finally:
print(“this”)#这个呢,也是可以被执行的

‘’’
Duang,还有一种处理错误的方式
try …except…else
try:
print(a)
except Exception as e:
print(“出错了,错误类型是{}”.format(type(e)))

else:#只有try里面的没出错,else里面的才会被执行
print(“this”)
‘’’
try:
print(a)
except Exception as e:
print(“出错了,错误类型是{}”.format(e))

else:#只有try里面的没出错,else里面的才会被执行
print(“that”)

try-except语句是一种异常处理机制,用捕获和处理可能发生的异常。它的基本语结构如下: ```python try: # 可能会引发异常的代码块 except ExceptionType1 # 处理 ExceptionType1 类型异常 except ExceptionType2: # 处 ExceptionType2 类型的异常 ... else: # 当没有发生任何异常时执行的代码块 ``` 在try块中,我们放置可能会引发异常的代码。如果在try块中的代码引发了异常,那么程序会跳转到与该异常类型匹配的except块,并执行相应的处理代码。如果没有匹配的except块,或者在处理异常时又引发了新的异常,那么该异常将被传递给上层调用栈。 如果在try块中的代码没有引发任何异常,那么程序将跳过所有的except块,直接执行else块中的代码。else块中的代码通常用于处理没有发生异常时的逻辑。 下面是一个示例,演示了try-except-except-else语句的使用: ```python try: num1 = int(input("请输入一个整数:")) num2 = int(input("请输入另一个整数:")) result = num1 / num2 except ValueError: print("输入的不是有效的整数!") except ZeroDivisionError: print("除数不能为零!") else: print("结果为:", result) ``` 在上面的示例中,如果用户输入的不是有效的整数,会引发ValueError异常,程序会执行第一个except块中的代码。如果用户输入的第二个整数为零,会引发ZeroDivisionError异常,程序会执行第二个except块中的代码。如果用户输入的两个整数都有效且除数不为零,程序会执行else块中的代码,输出计算结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值