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 isNULL
.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
isNone
.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 returnNULL
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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论