1.概念
函数返回值也可以是函数2.实例
def food(name):
def prepare():
print(f"[{name}]制作步骤:备菜...")
def cook():
print(f"[{name}]制作步骤:烹饪...")
def serve():
prepare()
cook()
print(f"[{name}]制作步骤:上菜...")
return serve
m = food("番茄炒蛋")
m()
f = food("小鸡炖蘑菇")
f()
[番茄炒蛋]制作步骤:备菜...
[番茄炒蛋]制作步骤:烹饪...
[番茄炒蛋]制作步骤:上菜...
[小鸡炖蘑菇]制作步骤:备菜...
[小鸡炖蘑菇]制作步骤:烹饪...
[小鸡炖蘑菇]制作步骤:上菜...
3.小结
- 可以将内部函数的引用,返回调用的地方;外部决定执行的时机。
- 外部不需要依次调用每个细节,实现了内部过程的封装。