📜  python raise 和 exit - Python (1)

📅  最后修改于: 2023-12-03 15:18:59.476000             🧑  作者: Mango

Python异常处理:raise和exit

在Python中,当程序发生异常时,会抛出一个Exception类的实例,并且程序会终止执行。为了让程序有更好的异常处理能力,Python提供了raise和exit等异常处理方法来帮助程序员快速准确地定位异常并进行处理。

raise

raise语句可以用于手动触发异常。抛出异常的语法为raise ExceptionType,其中ExceptionType为异常类型,message为异常信息。如果不指定ExceptionType,将默认为RuntimeError。

def divide(a, b):
    if b == 0:
        raise ZeroDivisionError("Cannot divide by zero!")
    else:
        return a / b

print(divide(6, 2)) # 输出:3.0
print(divide(6, 0)) # 抛出异常:ZeroDivisionError: Cannot divide by zero!

此外,raise语句还可以用于在异常被捕获后重新抛出,通常用于链式异常处理。

try:
    divide(6, 0)
except ZeroDivisionError:
    print("Division by zero occurred!")
    raise
exit

exit方法可以用于程序的退出,它同样可以传入一个退出码作为参数,表示程序退出时的返回值。默认情况下,exit方法传入的参数为0,表示程序正常退出。

import sys

def main():
    print("Hello world!")
    sys.exit(1)

if __name__ == "__main__":
    main()

在上面的例子中,程序在执行完print语句后调用了exit(1)方法,表示程序以1作为退出码退出。