反射 — Python 文档
来自菜鸟教程
Python/docs/3.9/c-api/reflection
反射
- PyObject *PyEval_GetBuiltins(void)
- 返回当前执行框架中内置函数的字典,如果当前没有框架正在执行,则返回线程状态的解释器。
- PyObject *PyEval_GetLocals(void)
- 返回当前执行帧中局部变量的字典,如果当前没有帧正在执行,则返回
NULL
。
- PyObject *PyEval_GetGlobals(void)
- 返回当前执行帧中全局变量的字典,如果当前没有帧正在执行,则返回
NULL
。
- PyFrameObject *PyEval_GetFrame(void)
返回当前线程状态的帧,如果当前没有帧正在执行,则为
NULL
。
- int PyFrame_GetBack(PyFrameObject *frame)
获取帧下一个外帧。
返回强引用,如果 frame 没有外框,则返回
NULL
。frame 不能是
NULL
。3.9 版中的新功能。
- int PyFrame_GetCode(PyFrameObject *frame)
获取帧代码。
返回一个强引用。
frame 不能是
NULL
。 结果(帧代码)不能是NULL
。3.9 版中的新功能。
- int PyFrame_GetLineNumber(PyFrameObject *frame)
返回 frame 当前正在执行的行号。
frame 不能是
NULL
。
- const char *PyEval_GetFuncName(PyObject *func)
- 如果是函数、类或实例对象,则返回 func 的名称,否则返回 func 类型的名称。
- const char *PyEval_GetFuncDesc(PyObject *func)
- 返回描述字符串,具体取决于 func 的类型。 返回值包括函数和方法的“()”、“构造函数”、“实例”和“对象”。 与 PyEval_GetFuncName() 的结果连接,结果将是 func 的描述。