函数是第一类对象:指的是函数的内存地址可以像一个变量值一样去使用
1.变量值可以被引用
def foo(): print('from foo')f=fooprint(f)f()
2.变量值可以当作参数传给另外一个函数
def foo(): print('from foo')def bar(x): print(x)x=11111bar(x)bar(foo)
3.变量值可以当作函数的返回值
def foo(): print('from foo')def fun(x): return xf=fun(foo)print(f)
4.变量值可以当作容器类型的元素
def foo(): print('from foo')l = [foo]print(l)l[0]()