函数对象

There are a few functions specific to Python functions.

PyFunctionObject

The C structure used for functions.

PyTypeObject PyFunction_Type

This is an instance of PyTypeObject and represents the Python function type. It is exposed to Python programmers as types.FunctionType .

int PyFunction_Check ( PyObject *o )

返回 True 若 o is a function object (has type PyFunction_Type ). The parameter must not be NULL . This function always succeeds.

PyObject * PyFunction_New ( PyObject *code , PyObject *globals )
返回值:新引用。

Return a new function object associated with the code object code . globals must be a dictionary with the global variables accessible to the function.

The function’s docstring and name are retrieved from the code object. __module__ is retrieved from globals . The argument defaults, annotations and closure are set to NULL . __qualname__ is set to the same value as the function’s name.

PyObject * PyFunction_NewWithQualName ( PyObject *code , PyObject *globals , PyObject *qualname )
返回值:新引用。

As PyFunction_New() , but also allows setting the function object’s __qualname__ 属性。 qualname should be a unicode object or NULL ;若 NULL __qualname__ attribute is set to the same value as its __name__ 属性。

3.3 版新增。

PyObject * PyFunction_GetCode ( PyObject *op )
返回值:借位引用。

Return the code object associated with the function object op .

PyObject * PyFunction_GetGlobals ( PyObject *op )
返回值:借位引用。

Return the globals dictionary associated with the function object op .

PyObject * PyFunction_GetModule ( PyObject *op )
返回值:借位引用。

返回 __module__ attribute of the function object op . This is normally a string containing the module name, but can be set to any other object by Python code.

PyObject * PyFunction_GetDefaults ( PyObject *op )
返回值:借位引用。

Return the argument default values of the function object op . This can be a tuple of arguments or NULL .

int PyFunction_SetDefaults ( PyObject *op , PyObject *defaults )

Set the argument default values for the function object op . defaults 必须是 Py_None or a tuple.

引发 SystemError 并返回 -1 当故障时。

PyObject * PyFunction_GetClosure ( PyObject *op )
返回值:借位引用。

Return the closure associated with the function object op . This can be NULL or a tuple of cell objects.

int PyFunction_SetClosure ( PyObject *op , PyObject *closure )

Set the closure associated with the function object op . closure 必须是 Py_None or a tuple of cell objects.

引发 SystemError 并返回 -1 当故障时。

PyObject * PyFunction_GetAnnotations ( PyObject *op )
返回值:借位引用。

Return the annotations of the function object op . This can be a mutable dictionary or NULL .

int PyFunction_SetAnnotations ( PyObject *op , PyObject *annotations )

Set the annotations for the function object op . annotations must be a dictionary or Py_None .

引发 SystemError 并返回 -1 当故障时。

上一话题

集对象

下一话题

实例方法对象

本页