函数名的应用
1、函数名指向的是函数的内存地址
def b():
global a
print(b,type(b()))
输出:
<function b at 0x000001F15891A3A8> <class 'NoneType'>
2、函数名就是变量
def fun():
print(666)
f = fun
f1 = f
f2 = f1
f2()
#输出
666
3、函数名可以做容器类数据类型的元素
def fun1():
print(666)
def fun2():
print(777)
def fun3():
print(888)
li = [fun1,fun2,fun3]
for i in li:
i()
输出:
666
777
888
4、函数名可以做函数的参数
def fun1():
print(666)
def fun2(x):
x() #fun1()
print(777)
fun2(fun1) #切记不能写成fun1()
#输出
666
777
5、函数名可以做函数的返回值
def fun1():
print(666)
def fun2(x):
print(777)
return x
ret = fun2(fun1)
ret()
输出:
777
666
print(ret)
输出:
777
666
<function fun1 at 0x0000025D814BA438>