反射

PyObject *PyEval_GetBuiltins(void)
Return value: Borrowed reference.

返回当前执行帧中内置的字典,如果当前没有执行帧,则返回线程状态的解释器。

PyObject *PyEval_GetLocals(void)
Return value: Borrowed reference.

返回当前执行帧中局部变量的字典,或 NULL 如果当前没有正在执行的帧。

PyObject *PyEval_GetGlobals(void)
Return value: Borrowed reference.

返回当前执行帧中全局变量的字典,或 NULL 如果当前没有正在执行的帧。

PyFrameObject *PyEval_GetFrame(void)
Return value: Borrowed reference.

返回当前线程状态的帧,即 NULL 如果当前没有正在执行的帧。

也见 PyThreadState_GetFrame() .

int PyFrame_GetBack(PyFrameObject *frame)

得到 框架 下一个外框。

返回一个 strong reference ,或 NULL 如果 框架 没有外框。

框架 不得 NULL .

3.9 新版功能.

int PyFrame_GetCode(PyFrameObject *frame)

得到 框架 代码。

返回一个 strong reference

框架 不得 NULL . 结果(帧代码)不能是 NULL .

3.9 新版功能.

int PyFrame_GetLineNumber(PyFrameObject *frame)

返回该行的行号 框架 当前正在执行。

框架 不得 NULL .

const char *PyEval_GetFuncName(PyObject *func)

返回的名称 func 如果是函数、类或实例对象,则为 func S型。

const char *PyEval_GetFuncDesc(PyObject *func)

返回描述字符串,具体取决于 func . 对于函数和方法,“构造函数”、“实例”和“对象”,返回值包括“()”。与结果连接 PyEval_GetFuncName() ,结果将是对 func .