Отражение¶
-
PyObject *PyEval_GetBuiltins(void)¶
- Возвращаемое значение: Заимствованная ссылка. Часть Стабильный ABI.
Не рекомендуется, начиная с версии 3.13: Вместо этого используйте
PyEval_GetFrameBuiltins()
.Возвращает словарь встроенных модулей в текущем фрейме выполнения, или интерпретатор состояния потока, если ни один фрейм в данный момент не выполняется.
-
PyObject *PyEval_GetLocals(void)¶
- Возвращаемое значение: Заимствованная ссылка. Часть Стабильный ABI.
Не рекомендуется, начиная с версии 3.13: Используйте либо
PyEval_GetFrameLocals()
, чтобы получить то же поведение, что и при вызовеlocals()
в коде Python, либо вызывайтеPyFrame_GetLocals()
по результатуPyEval_GetFrame()
, чтобы получить доступ к атрибутуf_locals
текущего выполняющегося кадра.Возвращает отображение, предоставляющее доступ к локальным переменным в текущем кадре выполнения, или
NULL
, если ни один кадр в данный момент не выполняется.Подробнее об отображении, возвращаемом при различных масштабах, см. в
locals()
.Поскольку эта функция возвращает borrowed reference, словарь, возвращаемый для optimized scopes, кэшируется на объекте фрейма и будет существовать до тех пор, пока существует объект фрейма. В отличие от
PyEval_GetFrameLocals()
иlocals()
, последующие вызовы этой функции в том же фрейме будут обновлять содержимое кэшированного словаря, чтобы отразить изменения в состоянии локальных переменных, а не возвращать новый снимок.Изменено в версии 3.13: Как часть PEP 667,
PyFrame_GetLocals()
,locals()
иFrameType.f_locals
больше не используют словарь общего кэша. Дополнительные сведения см. в What’s New entry.
-
PyObject *PyEval_GetGlobals(void)¶
- Возвращаемое значение: Заимствованная ссылка. Часть Стабильный ABI.
Не рекомендуется, начиная с версии 3.13: Вместо этого используйте
PyEval_GetFrameGlobals()
.Возвращает словарь глобальных переменных в текущем фрейме выполнения или
NULL
, если ни один фрейм в данный момент не выполняется.
-
PyFrameObject *PyEval_GetFrame(void)¶
- Возвращаемое значение: Заимствованная ссылка. Часть Стабильный ABI.
Возвращает кадр текущего состояния потока, который равен
NULL
, если ни один кадр в данный момент не выполняется.См. также
PyThreadState_GetFrame()
.
-
PyObject *PyEval_GetFrameBuiltins(void)¶
- Возвращаемое значение: Новая ссылка. Часть Стабильный ABI с версии 3.13.
Возвращает словарь встроенных модулей в текущем фрейме выполнения, или интерпретатор состояния потока, если ни один фрейм в данный момент не выполняется.
Added in version 3.13.
-
PyObject *PyEval_GetFrameLocals(void)¶
- Возвращаемое значение: Новая ссылка. Часть Стабильный ABI с версии 3.13.
Возвращает словарь локальных переменных в текущем фрейме выполнения или
NULL
, если ни один фрейм в данный момент не выполняется. Эквивалентно вызовуlocals()
в коде Python.Чтобы получить доступ к
f_locals
на текущем кадре, не делая независимого снимка в optimized scopes, вызовитеPyFrame_GetLocals()
по результатуPyEval_GetFrame()
.Added in version 3.13.
-
PyObject *PyEval_GetFrameGlobals(void)¶
- Возвращаемое значение: Новая ссылка. Часть Стабильный ABI с версии 3.13.
Возвращает словарь глобальных переменных в текущем фрейме выполнения, или
NULL
, если в данный момент не выполняется ни один фрейм. Эквивалентно вызовуglobals()
в коде Python.Added in version 3.13.
-
const char *PyEval_GetFuncName(PyObject *func)¶
- Часть Стабильный ABI.
Возвращает имя func, если это функция, класс или объект экземпляра, иначе имя funcs типа.
-
const char *PyEval_GetFuncDesc(PyObject *func)¶
- Часть Стабильный ABI.
Возвращает строку описания, зависящую от типа func. Возвращаемые значения включают «()» для функций и методов, «конструктор», «экземпляр» и «объект». Конкатенированный с результатом
PyEval_GetFuncName()
, результат будет представлять собой описание func.