0

我目前正在尝试通过 Python.SetTrace() 进行轻量级调试。但是我找不到从回调参数(TraceBackFrame stackFrame、字符串 stEvent、对象有效负载)到包含代码的 ScriptSource 的通用方式。

我可以通过匹配文件路径(ScriptSource.Path 等于 TraceBackFrame.f_code.co_filename,或者当不涉及文件时后者是“字符串”)来映射我最初调用 Execute() 的 ScriptSource。

但是我搜索从 TraceBackFrame 指向 ScriptSource 的任何引用(适用于脚本通过 import、exec、execfile 等执行的其他 python 文件)没有成功。

感谢您的任何提示!

4

1 回答 1

0

仅作记录:如果文件可用,我们当前的解决方案现在是自己解析源文件。对于没有文件支持的堆栈帧(例如 eval),我们根本无法跟踪它们。

于 2011-11-11T15:57:21.437 回答