1.闭包函数
作用域的关系:
闭包函数:
闭指的是:该函数是一个内部函数
包指的是:指的是该函数包含对外部作用域(非全局作用域)名字的引用==(即形参变量名的赋值引用)
给函数传值有两种方式:
def inner(x):
inner(x)
方式二:
2.装饰器
import time def index(): print('welcome to index') time.sleep(3) return 123 def home(name): print('welcome %s to name'%(name)) def timmer(func): def wepper(*args, **kwargs): start = time.time() res = func(*args, **kwargs) stop = time.time() print('run time is %s' % (stop - start)) return res return wepper index = timmer(index) home = timmer(home) index() home('egon')
装饰器语法糖:
# def timmer(func):
#
# def index():
#
# def home(name):
#
# res=index()
# home('egon')
文章来源: python之闭包函数和装饰器