函数是一等公民即函数与字符串数组整型无异,它可以被命名可以被赋值可以当作参数被传进另一个函数也可以被另一个函数当作返回值可以放在任何位置,这一点对于很多语言来说是至关重要的,我们可以来看看什么是所谓的闭包:
闭包(closure)
def decorator(func):
def wraper():
print("start")
return func()
print("end")
return wraper
@decorator
def now():
print("2016-10-19")
很明显我们可以看出,因为函数可以被当作参数也能被当作返回值,所以在被返回的时候动态的加入了一些新功能,而且不用重新修动代码。