函数对象

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 .

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; if NULL, the __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 当故障时。

上一话题

集对象

下一话题

实例方法对象

本页