回溯一个 Python 函数

Tracingback a Python function

我通常用C++来理解项目架构的一种方式是使用GDB在特定的函数中设置一个断点,然后使用回溯功能,我可以很容易地理解不同函数之间的调用类.我是 Python 的新手,我想问一下用于理解 Python 项目的最佳技术是什么,

我看了一下 traceback 但问题是它只跟踪同一模块内的函数,因此如果调用者在不同的模块中,则不会被跟踪。另外,栈的大小也是有限制的,不对的请指正

能否请您根据自己的经验分享您正在使用的Technics。

我不知道你从哪里想到 python 的回溯将被限制在单个模块或大小上 - 当异常发生时,你 当然 完整的 堆栈跟踪可用。

话虽这么说,Python has a full step debugger in it's stdlib,它可以让您检查和导航整个调用堆栈。当然还有各种 IDE 和自定义 shell 或环境(即 IPython 等)中的第三方步骤调试器。

注意 inspect 模块也可能 be of interest to you - 不仅用于堆栈检查 ;-)