# 在python中,所有变量存放的值只要是地址,我们就称之为对象
# -- 所有的变量都是用来存放地址的,所以都是对象
# -- 存放整型的地址就是整型对象 | 存放函数的地址就是函数对象 | 存放文件的地址就是文件对象
# 函数对象:存放函数地址的变量就是函数对象
def fn(): pass my_fn = fn
# my_fn | fn都存着函数地址,所以都是函数对象,函数对象的使用就是 函数对象() 来调用函数
# 函数对象的应用场景
# 1.函数对象()就是调用函数
# 2.函数对象可以直接作为变量赋值给其他变量
# 3.函数对象可以作为函数的参数
# 4.函数对象可以作为函数的返回值
# 5.函数对象可以作为容器类型的成员
# 1.函数对象()就是调用函数
def fn1(): pass fn1()
# 2.函数对象可以直接作为变量赋值给其他变量
def fn2(): pass my_fn = fn2 print('>>>', my_fn, fn2) my_fn()
# 3.函数对象可以作为函数的参数
def fn3(func): # func = my_fn = fn2 func() fn3(my_fn)
# 4.函数对象可以作为函数的返回值
def fn4(): return my_fn my_fn2 = fn4()
# 5.函数对象可以作为容器类型的成员
ls = [my_fn, my_fn2]