Функціональні об’єкти¶
Є кілька функцій, специфічних для функцій Python.
-
PyFunctionObject¶ Структура C, яка використовується для функцій.
-
PyTypeObject
PyFunction_Type¶ Це екземпляр
PyTypeObjectі представляє тип функції Python. Він надається програмістам Python якtypes.FunctionType.
-
int
PyFunction_Check(PyObject *o)¶ Повертає true, якщо o є об’єктом функції (має тип
PyFunction_Type). Параметр не має бутиNULL. Ця функція завжди успішна.
-
PyObject*
PyFunction_New(PyObject *code, PyObject *globals)¶ - Return value: New reference.
Повертає новий об’єкт функції, пов’язаний з об’єктом коду code. globals має бути словником із глобальними змінними, доступними для функції.
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)¶ - Return value: New reference.
As
PyFunction_New(), but also allows setting the function object’s__qualname__attribute. qualname should be a unicode object orNULL; ifNULL, the__qualname__attribute is set to the same value as its__name__attribute.Нове в версії 3.3.
-
PyObject*
PyFunction_GetCode(PyObject *op)¶ - Return value: Borrowed reference.
Повертає об’єкт коду, пов’язаний з об’єктом функції op.
-
PyObject*
PyFunction_GetGlobals(PyObject *op)¶ - Return value: Borrowed reference.
Повертає словник globals, пов’язаний з об’єктом функції op.
-
PyObject*
PyFunction_GetModule(PyObject *op)¶ - Return value: Borrowed reference.
Return the __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 value: Borrowed reference.
Повертає стандартні значення аргументу об’єкта функції op. Це може бути кортеж аргументів або
NULL.
-
int
PyFunction_SetDefaults(PyObject *op, PyObject *defaults)¶ Установіть значення аргументу за замовчуванням для об’єкта функції op. за замовчуванням має бути
Py_Noneабо кортеж.Викликає
SystemErrorі повертає-1у разі помилки.
-
PyObject*
PyFunction_GetClosure(PyObject *op)¶ - Return value: Borrowed reference.
Повертає закриття, пов’язане з об’єктом функції op. Це може бути
NULLабо кортеж об’єктів клітинки.
-
int
PyFunction_SetClosure(PyObject *op, PyObject *closure)¶ Установіть закриття, пов’язане з функціональним об’єктом op. закриття має бути
Py_Noneабо кортеж об’єктів клітинки.Викликає
SystemErrorі повертає-1у разі помилки.
-
PyObject *
PyFunction_GetAnnotations(PyObject *op)¶ - Return value: Borrowed reference.
Повертає анотації об’єкта функції op. Це може бути змінний словник або
NULL.
-
int
PyFunction_SetAnnotations(PyObject *op, PyObject *annotations)¶ Встановіть анотації для об’єкта функції op. анотації мають бути словником або
Py_None.Викликає
SystemErrorі повертає-1у разі помилки.