> **Источник:** https://python-all.ru/3.1/c-api/reflection.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# Рефлексия

**[PyObject](https://python-all.ru/3.1/c-api/structures.html#PyObject)\* `PyEval_GetBuiltins`()**

*Возвращаемое значение: заимствованная ссылка.*

Возвращает словарь встроенных имен в текущем фрейме выполнения или интерпретатор состояния потока, если в данный момент ни один фрейм не выполняется.

**[PyObject](https://python-all.ru/3.1/c-api/structures.html#PyObject)\* `PyEval_GetLocals`()**

*Возвращаемое значение: заимствованная ссылка.*

Возвращает словарь локальных переменных текущего кадра выполнения или *NULL*, если ни один кадр не выполняется.

**[PyObject](https://python-all.ru/3.1/c-api/structures.html#PyObject)\* `PyEval_GetGlobals`()**

*Возвращаемое значение: заимствованная ссылка.*

Возвращает словарь глобальных переменных текущего кадра выполнения или *NULL*, если ни один кадр не выполняется.

**PyFrameObject\* `PyEval_GetFrame`()**

*Возвращаемое значение: заимствованная ссылка.*

Возвращает кадр текущего состояния потока; он равен *NULL*, если в данный момент ни один кадр не выполняется.

**const char\* `PyEval_GetFuncName`([PyObject](https://python-all.ru/3.1/c-api/structures.html#PyObject) *\*func*)**

Возвращает имя

*func*

, если это функция, класс или объект экземпляра, в противном случае – имя типа

*func*

.

**const char\* `PyEval_GetFuncDesc`([PyObject](https://python-all.ru/3.1/c-api/structures.html#PyObject) *\*func*)**

Возвращает строку описания в зависимости от типа

*func*

. Возвращаемые значения: «()» для функций и методов, «конструктор», «экземпляр» и «объект». Если объединить с результатом

[`PyEval_GetFuncName()`](https://python-all.ru/3.1/c-api/reflection.html#PyEval_GetFuncName)

, получится описание

*func*

.
