some_function()执行时引发异常,因此程序跳转到except:
some_function()
except
try: some_function() except: print("exception happened!")
我如何查看导致异常发生的原因?
要查看导致异常发生的原因,可以使用except以下命令捕获异常的详细信息:Exception阶级traceback模块。您可以按照以下方法修改代码,以打印异常类型、消息和完整回溯:
Exception
traceback
as您可以使用将其分配给变量来捕获特定的异常:
as
try: some_function() except Exception as e: print(f"Exception occurred: {e}")
这将打印异常消息,但不会给您完整的回溯。
要获取更多详细信息,包括完整的回溯,您可以使用该traceback模块:
import traceback try: some_function() except Exception as e: print(f"Exception occurred: {e}") traceback.print_exc()
该traceback.print_exc()函数将打印完整的堆栈跟踪,向您显示异常发生的确切位置并提供更多调试上下文。
traceback.print_exc()
Exception occurred: division by zero Traceback (most recent call last): File "example.py", line 3, in <module> some_function() File "example.py", line 2, in some_function return 1 / 0 ZeroDivisionError: division by zero
这将为您提供异常消息(division by zero)和回溯,显示何时
division by zero