一:什么是闭包
1:必须有一个内部函数
2:外部函数返回值内部函数
3:内部函数一定要调用外部函数的变量
二:什么是装饰器
1:装饰器和闭包的区别
闭包传递的是变量,装饰器传递的是函数,可以说装饰器是闭包的一种,它只是传递函数的闭包
装饰器本质是一种函数,在原函数上增加新的功能。比如加入日志,预处理功能。
三:生成器
一边循环一边计算,可以节约内存空间,yield:暂停运行,并返回结果,下次执行next()方法,从当前位置继续运行。
四:迭代器
1:迭代器的特点
1:只会向前访问 2:能for循环的对象,都是可迭代对象,生成器是可迭代对象,可迭代对象不一定是生成器
2:迭代器和生成器的区别
生成器可以做迭代器所做的所有事,生成器可以自动创建方法,显得简洁,还可以节约空间,当终结时报出异常
标签:闭包,函数,迭代,对象,生成器,装饰 From: https://www.cnblogs.com/vip01/p/17407155.html