''' - 这是一个decorator - 使用一个函数作为参数 - 它返回一个函数 ''' defa_new_decorator(a_func): defwrapTheFunction(): print("I am doing some boring work before executing a_func()") a_func() print("I am doing some boring work after executing a_func()") return wrapTheFunction
defwrapTheFunction(): print("I am doing some boring work before executing a_func()")
a_func()
print("I am doing some boring work after executing a_func()")
return wrapTheFunction
defa_function_requiring_decoration(): print("I am the function which needs some decoration to remove my foul smell")
#a_function_requiring_decoration() #outputs: "I am the function which needs some decoration to remove my foul smell"
a_function_requiring_decoration = a_new_decorator(a_function_requiring_decoration) #now a_function_requiring_decoration is wrapped by wrapTheFunction()
a_function_requiring_decoration() #outputs:I am doing some boring work before executing a_func() # I am the function which needs some decoration to remove my foul smell # I am doing some boring work after executing a_func()