标签:fun turn 内嵌 UNC home return 传递 func war
适用于给已有的代码添加一点新功能
有一个回家函数 go_home
def go_home():
print("回家了!!!")
go_home()
>>>回家了!!!
在回家之前去搞个苹果
def get_apple(func):
def f():
print("买了个苹果!")
func()
return f
@get_apple
def go_home():
print("回家了!!!")
go_home()
>>>买了个苹果!
>>>回家了!!!
有一个回家函数 go_home
def go_home():
return "回家了!!!"
ret = go_home()
print(ret)
>>>回家了!!!
在回家之前去搞个苹果
def get_apple(func):
def f():
print("买了个苹果!")
ret = func()
return ret
return f
@get_apple
def go_home():
return "回家了!!!"
ret = go_home()
print(ret)
>>>买了个苹果!
>>>回家了!!!
有一个回家函数 go_home
def go_home(mood):
print(mood+"的回家了!!!")
go_home(“高高兴兴”)
>>>高高兴兴的回家了!!!
在回家之前去搞个苹果
def get_apple(func):
def f(*args, **kwargs):
print("买了个苹果!")
func(*args, **kwargs)
return f
@get_apple
def go_home(mood):
print(mood+"的回家了!!!")
go_home(“高高兴兴”)
>>>买了个苹果!
>>>高高兴兴的回家了!!!
def get_apple(apple="苹果"):
def f1(func):
def f2():
print("买了个"+apple)
func()
return f2
return f1
@get_apple("红红的苹果")
def go_home():
print("回家了!!!")
@get_apple("烂苹果")
def gift():
print("送给坏人!!!")
go_home()
gift()
>>>买了个红红的苹果
>>>回家了!!!
>>>买了个烂苹果
>>>送给坏人!!!
def flower(func):
def f():
print("买朵玫瑰")
func()
return f
def get_apple(func):
def f():
print("买个苹果")
func()
return f
@flower
@get_apple
def go_home():
print("回家送给对象!")
go_home()
>>>买朵玫瑰
>>>买个苹果
>>>回家送给对象!
标签:fun turn 内嵌 UNC home return 传递 func war
原文地址:https://www.cnblogs.com/QX-Tang/p/11523416.html