リフレクション

PyObject *PyEval_GetBuiltins(void)
戻り値: 借用参照。 次に属します: Stable ABI.

バージョン 3.13 で非推奨: Use PyEval_GetFrameBuiltins() instead.

現在の実行フレーム内のビルトインの辞書か、もし実行中のフレームがなければスレッド状態のインタプリタのビルトイン辞書を返します。

PyObject *PyEval_GetLocals(void)
戻り値: 借用参照。 次に属します: Stable ABI.

バージョン 3.13 で非推奨: Use either PyEval_GetFrameLocals() to obtain the same behaviour as calling locals() in Python code, or else call PyFrame_GetLocals() on the result of PyEval_GetFrame() to access the f_locals attribute of the currently executing frame.

Return a mapping providing access to the local variables in the current execution frame, or NULL if no frame is currently executing.

Refer to locals() for details of the mapping returned at different scopes.

As this function returns a borrowed reference, the dictionary returned for optimized scopes is cached on the frame object and will remain alive as long as the frame object does. Unlike PyEval_GetFrameLocals() and locals(), subsequent calls to this function in the same frame will update the contents of the cached dictionary to reflect changes in the state of the local variables rather than returning a new snapshot.

バージョン 3.13 で変更: As part of PEP 667, PyFrame_GetLocals(), locals(), and FrameType.f_locals no longer make use of the shared cache dictionary. Refer to the What's New entry for additional details.

PyObject *PyEval_GetGlobals(void)
戻り値: 借用参照。 次に属します: Stable ABI.

バージョン 3.13 で非推奨: Use PyEval_GetFrameGlobals() instead.

現在の実行フレーム内のグローバル変数の辞書か、実行中のフレームがなければ NULL を返します。

PyFrameObject *PyEval_GetFrame(void)
戻り値: 借用参照。 次に属します: Stable ABI.

現在のスレッド状態のフレームを返します。現在実行中のフレームがなければ NULL を返します。

See also PyThreadState_GetFrame().

PyObject *PyEval_GetFrameBuiltins(void)
戻り値: 新しい参照。 次に属します: Stable ABI (バージョン 3.13 より).

現在の実行フレーム内のビルトインの辞書か、もし実行中のフレームがなければスレッド状態のインタプリタのビルトイン辞書を返します。

Added in version 3.13.

PyObject *PyEval_GetFrameLocals(void)
戻り値: 新しい参照。 次に属します: Stable ABI (バージョン 3.13 より).

Return a dictionary of the local variables in the current execution frame, or NULL if no frame is currently executing. Equivalent to calling locals() in Python code.

To access f_locals on the current frame without making an independent snapshot in optimized scopes, call PyFrame_GetLocals() on the result of PyEval_GetFrame().

Added in version 3.13.

PyObject *PyEval_GetFrameGlobals(void)
戻り値: 新しい参照。 次に属します: Stable ABI (バージョン 3.13 より).

Return a dictionary of the global variables in the current execution frame, or NULL if no frame is currently executing. Equivalent to calling globals() in Python code.

Added in version 3.13.

const char *PyEval_GetFuncName(PyObject *func)
次に属します: Stable ABI.

func が関数、クラス、インスタンスオブジェクトであればその名前を、そうでなければ func の型を返します。

const char *PyEval_GetFuncDesc(PyObject *func)
次に属します: Stable ABI.

func の型に依存する、解説文字列(description string)を返します。戻り値は、関数とメソッドに対しては "()", " constructor", " instance", " object" です。 PyEval_GetFuncName() と連結された結果、 func の解説になります。