python学习笔记——函数也是对象

参考链接
类的内置方法
python是面向对象的编程语言,一切都是对象。
类的内建方法
对象的特点:
在运行时被创建
能够赋值给变量
能够作为参数传递给函数
能够作为函数的返回值

函数也是对象

def pp():
    print("hello")
print(type(pp))

输出:

<class 'function'>

可以看出来函数pp的数据类型是function,就说明pp是类function的一个实例

>>>a=pp
>>>a
<function pp at 0x000001CDAF1F1948>
>>>a()
hello

可以看到将对象pp赋值给了变量a。

高阶函数

接受函数为参数或者把函数作为结果返回的函数,叫做高阶函数,比如map、filter、reduce。

可调用对象

Python共有7种可调用对象:
用户自定义函数、内置函数、内置方法、方法(类中定义的函数)、类(类是可调用的,调用类时会调用类的__new__方法创建一个实例,然后调用__init__方法初始化实例,最后返回实例给调用方。)、类的实例(如果类定义了__call__方法,那么它的实例可以作为函数调用。call函数通过加括号触发)、生成器函数

类的方法:

__new__()#创建实例
__init__()#初始化实例
__call__()#使实例可以被调用,instance()直接调用__call__()函数,神经网络模型也是通过call函数调用forward函数
__getitem__()#通过instance[index]调用实例元素,本质是instance.__getitem__(index)
__len__#求实力长度,len(instance)本质是instance.__len__()
__iter__()#可迭代对象,for...in...调用__iter__()返回迭代器,(迭代器含有__iter__()和__next__()),通过迭代器调用__next__()方法遍历这个实例
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值