Python Callable 类型简述

Callable 类型是可以被执行调用操作的类型。包含以下类型

  1. 自定义函数
    对于,自定义的函数比如使用def、lambda所定义的函数具有以下属性。
属性 描述 可写
__doc__ 函数说明,为字符串,不可用时为None,不会被子类继承
__name__ 函数名
__qualname__ 完全限定名称,表示模块的整个虚线路径
__module__ 所属模块
__defaults__ 参数默认值的元组,没有默认参数则为空
__code__ 编译后的函数体对象
__globals__ 所有该函数所在的全局命名空间所持有的变量字典 ×
__dict__ 一个储存可读写属性的字典类型数据
__closure__ 由可被调用的闭包内变量所组成的元组,没有则为None ×
__annotations__ 参数注释的字典,如果该参数有注释的话
__kwdefaults__ 关键字参数与该参数的默认值组成的字典
  1. 实例方法
属性 描述 可写
__doc__ 函数说明,为字符串,不可用时为None,不会被子类继承
__name__ 函数名
__self__ 该方法实例(实例方法属性) ×
__func__ 方法对象(实例方法属性) ×
  1. 迭代方法

用yeild声明的方法

  1. 异步方法

用async def定义或者 async with async for声明的方法。

  1. 异步迭代方法

  2. 内置函数
    内置函数是被C语言函数封装过函数。

  3. 内置方法


  4. 类使用被调用的方式实例化,会默认调用__new__方法。典型的实例化定义方式是重写__init__方法。类在实例化时是先调用__new__方法生成并返回一个实例。再通过__init__对实例进行初始化后,将实例返回给调用者。

  5. 实例
    实例如果有__call__方法同样可以被调用。

详细参见:3. Data model — Python 3.6.2 documentation

你可能感兴趣的:(Python Callable 类型简述)