装饰器#
# Decorator
def add_candles(cake_func):
def insert_candles():
return cake_func() + " candles"
return insert_candles
def make_cake():
return "cake"
gift_func = add_candles(make_cake)
print(make_cake())
print(gift_func())
cake
cake candles
# 下面使用装饰器的效果等同于上面代码块
def add_candles(cake_func):
def insert_candles():
return cake_func() + " candles"
return insert_candles
@add_candles
def make_cake():
return "cake"
print(make_cake())
cake candles