Python提升关键字
Python raise 关键字用于引发异常或错误。 raise 关键字会引发错误并停止程序的控制流。它用于在异常处理程序中提出当前异常,以便可以在调用堆栈中进一步处理它。
raise 关键字的语法:
raise {name_of_ the_ exception_class}
引发错误的基本方法是:
raise Exception(“user text”)
例子:
在下面的代码中,我们检查整数是偶数还是奇数。如果整数是奇数,则会引发异常。 a 是一个变量,我们分配了一个数字 5,因为 a 是奇数,然后 if 循环检查它是否是奇数,如果是奇数则引发错误。
输入:
Python3
a = 5
if a % 2 != 0:
raise Exception("The number shouldn't be an odd integer")
Python3
s = 'apple'
try:
num = int(s)
except ValueError:
raise ValueError("String can't be changed into integer")
Python3
s = 'apple'
try:
num = int(s)
except:
raise
输出:
在引发错误的同时,我们还可以提出需要引发什么样的错误,并在必要时打印出文本。
句法:
raise TypeError
例子:
在下面的代码中,我们尝试将分配给 s 的字符串'apple' 更改为整数,并编写了一个 try-except 子句来引发 ValueError。 raise 关键字引发值错误,并显示消息“字符串不能更改为整数”。
输入:
Python3
s = 'apple'
try:
num = int(s)
except ValueError:
raise ValueError("String can't be changed into integer")
输出:
在不指定异常类的情况下引发异常
当我们使用 raise 关键字时,没有强迫性地给出一个异常类。当我们不使用 raise 关键字给出任何异常类名时,它会重新引发上次发生的异常。
例子:
在上面的代码中,我们尝试将字符串“apple”更改为整数,并编写了一个 try-except 子句来引发 ValueError。除了我们不提供异常类之外,代码与之前相同,它重新引发了上次发生的异常。
输入:
Python3
s = 'apple'
try:
num = int(s)
except:
raise
输出:
raise关键字的优点:
- 当我们遇到无法继续执行的情况时,它可以帮助我们引发异常。
- 它帮助我们重新引发被捕获的异常。
- Raise 允许我们在任何时候抛出一个异常。
- 当我们想要使用输入验证时,它很有用。