Function オブジェクト¶
Functionオブジェクト固有の関数はわずかです。
- 
PyFunctionObject¶
- 関数に使われるCの構造体。 
- 
PyTypeObject PyFunction_Type¶
- PyTypeObject型のインスタンスで、 Python の関数型を表します。これは Python プログラムに- types.FunctionTypeとして公開されています。
- 
int PyFunction_Check(PyObject *o)¶
- o が関数オブジェクト ( - PyFunction_Type型である) 場合に真を返します。パラメータは- NULLにできません。この関数は常に成功します。
- 
PyObject* PyFunction_New(PyObject *code, PyObject *globals)¶
- Return value: New reference.コードオブジェクト code に関連付けられた新しい関数オブジェクトを返します。globals はこの関数からアクセスできるグローバル変数の辞書でなければなりません。 関数のドキュメント文字列と名前はコードオブジェクトから取得されます。 __module__ は globals から取得されます。 引数のデフォルト値やアノテーション、クロージャは NULLに設定されます。 __qualname__ は関数名と同じ値に設定されます。
- 
PyObject* PyFunction_NewWithQualName(PyObject *code, PyObject *globals, PyObject *qualname)¶
- Return value: New reference.PyFunction_New()に似ていますが、関数オブジェクトの__qualname__属性に値をセットできます。 qualname はユニコードオブジェクトかNULLでなくてはなりません。NULLだった場合、__qualname__属性には__name__属性と同じ値がセットされます。バージョン 3.3 で追加. 
- 
PyObject* PyFunction_GetCode(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op に関連付けられたコードオブジェクトを返します。 
- 
PyObject* PyFunction_GetGlobals(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op に関連付けられたglobals辞書を返します。 
- 
PyObject* PyFunction_GetModule(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op の __module__ 属性を返します。これには普通はモジュール名の文字列が入っていますが、Python コードから他のオブジェクトをセットされることもあります。 
- 
PyObject* PyFunction_GetDefaults(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op の引数のデフォルト値を返します。 引数のタプルか NULLになります。
- 
int PyFunction_SetDefaults(PyObject *op, PyObject *defaults)¶
- 関数オブジェクト op の引数のデフォルト値を設定します。 defaults は - Py_Noneかタプルでなければいけません。- 失敗した時は、 - SystemErrorを発生させ、- -1を返します。
- 
PyObject* PyFunction_GetClosure(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op に設定されたクロージャを返します。 NULLか cell オブジェクトのタプルです。
- 
int PyFunction_SetClosure(PyObject *op, PyObject *closure)¶
- 関数オブジェクト op にクロージャを設定します。 closure は、 - Py_Noneもしくは cell オブジェクトのタプルでなければなりません。- 失敗した時は、 - SystemErrorを発生させ、- -1を返します。
- 
PyObject *PyFunction_GetAnnotations(PyObject *op)¶
- Return value: Borrowed reference.関数オブジェクト op のアノテーションを返します。 返り値は修正可能な辞書か NULLになります。
- 
int PyFunction_SetAnnotations(PyObject *op, PyObject *annotations)¶
- 関数オブジェクト op のアノテーションを設定します。 annotations は辞書か、 - Py_Noneでなければなりません。- 失敗した時は、 - SystemErrorを発生させ、- -1を返します。