每当你编写更大的代码和建立更复杂的应用程序时,Python中的异常就会很常见。当人们无法解决它们时,它们会变得很烦人。
错误什么时候发生?
- 给予错误的输入
- 一个模块/库房/资源无法到达
- 超出了内存或时间
- 程序员犯的任何语法错误
Python中不同的异常
异常被定义为程序中的一个条件,它中断了程序的流程并停止了代码的执行。Python提供了一种处理这些异常的神奇方法,使代码运行时没有任何错误和中断。
异常可以属于内置的错误/异常,也可以有自定义的异常。一些常见的内置异常如下:
- ZeroDivisionError
- 名称错误
- 缩进错误
- IO错误
- EOFError
在Python中创建一个测试异常
让我们看看一些例子,看看异常在Python解释器中的样子。让我们看看下面给出的代码的输出。
a = int(input("Enter numerator: "))
b = int(input("Enter denominator: "))
print("a/b results in : ")
print(a/b)
当分子是一个整数,分母是0时,输出结果如下所示。
Enter numerator: 2
Enter denominator: 0
a/b results in :
Traceback (most recent call last):
File "C:/Users/Hp/Desktop/test.py", line 4, in <module>
print(a/b)
ZeroDivisionError: division by zero
用Try...Except...避免异常
为了避免错误的出现和停止程序的运行,我们使用了try-except语句。整个代码逻辑被放在try块中,except块则处理发生异常/错误的情况。
其语法见下文:
try:
#block of code
except <Name of Exception>:
#block of code
#Rest of the code
在Python中处理ZeroDivisionError异常
让我们看看我们前面提到的代码,在try-except块的帮助下显示ZeroDivisionError。请看下面提到的代码。
try:
a = int(input("Enter numerator: "))
b = int(input("Enter denominator: "))
print(a/b)
except ZeroDivisionError:
print("Denominator is zero")
这段代码的输出与之前的输入相同,如下所示:
Enter numerator: 2
Enter denominator: 0
Denominator is zero
总结
现在,你已经有了一个关于异常处理的介绍,我希望你已经清楚了异常处理的基本概念。
你可以自己尝试各种异常。编码愉快谢谢你的阅读!😇