Function Objects

有一些特定于 Python 函数的函数。

  • PyFunctionObject

    • 用于函数的 C 结构。
  • PyTypeObject PyFunction_Type

    • 这是PyTypeObject的实例,代表 Python 函数类型。它对types.FunctionType公开给 Python 程序员。

返回与代码对象* code *关联的新Function对象。 * globals *必须是具有全局变量的字典,函数可以访问该全局变量。

从代码对象中检索函数的文档字符串,名称和* __ module __ ,参数 defaults 和闭包设置为 NULL *。

返回与Function对象* op *关联的代码对象。

  • PyObject * PyFunction_GetGlobals(PyObject ** op *)
    • *返回值:借用参考。

返回与函数对象* op *关联的全局字典。

  • PyObject * PyFunction_GetModule(PyObject ** op *)
    • *返回值:借用参考。

返回函数对象* op __ module __ *属性。这通常是一个包含模块名称的字符串,但是可以pass Python 代码设置为任何其他对象。

  • PyObject * PyFunction_GetDefaults(PyObject ** op *)
    • *返回值:借用参考。

返回函数对象* op 的参数默认值。这可以是参数的 Tuples 或 NULL *。

  • int PyFunction_SetDefaults(PyObject *op PyObject defaults *)
    • 为Function对象* op 设置参数默认值。 默认值必须为 Py_None *或 Tuples。

引发SystemError并在失败时返回-1

  • PyObject * PyFunction_GetClosure(PyObject ** op *)
    • *返回值:借用参考。

返回与Function对象* op 关联的闭包。这可以是 NULL *或单元格对象的 Tuples。

  • int PyFunction_SetClosure(PyObject *op PyObject closure *)
    • 设置与Function对象* op *关联的闭包。 * closure 必须为 Py_None *或单元格对象的 Tuples。

引发SystemError并在失败时返回-1