尝试通过源代码开始跟踪Python功能和行为

Jef*_*ing 6 python cpython python-2.7 python-3.x

我希望能够通过Python源代码进行调查和跟踪,以了解事情是如何工作的,并解决对参考文档中未明确记录的功能的疑虑.

我想有一些关于如何解决这个问题的初步信息,因为它非常令人难以置信.我可以读C,所以我继续为我做.除此之外,如果没有至少一点指导,这项任务似乎有点吓人.

例如,假设我想记录如何在Python中实现属性引用.我如何跟踪Python程序中存在属性引用表达式时会发生什么?

也许概述源代码是如何组织的以及每个部分的作用将是有用的,以及一些"walk = thru"示例,例如"属性引用"案例.

我搜索了这方面的信息,但似乎没有太多.

Jos*_*osh 1

也许一个好的 Python 调试器会有所帮助?我会尝试使用Eclipse 的 PyDev 插件。这至少可以帮助您跟踪当您引用类的属性时调用了哪些特殊的 python 方法(例如__getattr__()或)。__setattr__()如果需要更深入,可以查看Python C API甚至Python C 源代码

  • 看起来你可以使用 [GDB with Python](http://wiki.python.org/moin/DebuggingWithGdb) 在 C 源代码级别进行调试 (2认同)