Frame Objects - Python 3.12.0a3 documentation 编辑

type PyFrameObject
Part of the Limited API (as an opaque struct).

The C structure of the objects used to describe frame objects.

There are no public members in this structure.

Changed in version 3.11: The members of this structure were removed from the public C API. Refer to the What’s New entry for details.

The PyEval_GetFrame() and PyThreadState_GetFrame() functions can be used to get a frame object.

See also Reflection.

PyTypeObject PyFrame_Type

The type of frame objects. It is the same object as types.FrameType in the Python layer.

Changed in version 3.11: Previously, this type was only available after including <frameobject.h>.

int PyFrame_Check(PyObject *obj)

Return non-zero if obj is a frame object.

Changed in version 3.11: Previously, this function was only available after including <frameobject.h>.

PyFrameObject *PyFrame_GetBack(PyFrameObject *frame)

Get the frame next outer frame.

Return a strong reference, or NULL if frame has no outer frame.

New in version 3.9.

PyObject *PyFrame_GetBuiltins(PyFrameObject *frame)

Get the frame’s f_builtins attribute.

Return a strong reference. The result cannot be NULL.

New in version 3.11.

PyCodeObject *PyFrame_GetCode(PyFrameObject *frame)
Part of the Stable ABI since version 3.10.

Get the frame code.

Return a strong reference.

The result (frame code) cannot be NULL.

New in version 3.9.

PyObject *PyFrame_GetGenerator(PyFrameObject *frame)

Get the generator, coroutine, or async generator that owns this frame, or NULL if this frame is not owned by a generator. Does not raise an exception, even if the return value is NULL.

Return a strong reference, or NULL.

New in version 3.11.

PyObject *PyFrame_GetGlobals(PyFrameObject *frame)

Get the frame’s f_globals attribute.

Return a strong reference. The result cannot be NULL.

New in version 3.11.

int PyFrame_GetLasti(PyFrameObject *frame)

Get the frame’s f_lasti attribute.

Returns -1 if frame.f_lasti is None.

New in version 3.11.

PyObject *PyFrame_GetVar(PyFrameObject *frame, PyObject *name)

Get the variable name of frame.

  • Return a strong reference to the variable value on success.

  • Raise NameError and return NULL if the variable does not exist.

  • Raise an exception and return NULL on error.

name type must be a str.

New in version 3.12.

PyObject *PyFrame_GetVarString(PyFrameObject *frame, const char *name)

Similar to PyFrame_GetVar(), but the variable name is a C string encoded in UTF-8.

New in version 3.12.

PyObject *PyFrame_GetLocals(PyFrameObject *frame)

Get the frame’s f_locals attribute (dict).

Return a strong reference.

New in version 3.11.

int PyFrame_GetLineNumber(PyFrameObject *frame)
Part of the Stable ABI since version 3.10.

Return the line number that frame is currently executing.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:67 次

字数:5461

最后编辑:8年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文