概述
装饰器(decorator)
what:装饰器是个函数,传入一个函数(比如主功能函数),返回另一个函数(比如计时函数)
why:引入日志、执行时间统计、权限校验等
import time
# 装饰器函数 功能为func函数计时
def timeslong(func): # 以函数作为参数
def wrapper():
start = time.clock()
print("开始计时!")
func() # 执行func
print("计时完成!")
end = time.clock()
return "共跑了 %s s." % (end - start)
return wrapper # 返回一个替换函数的可执行函数
@timeslong
def f():
y = 0
for i in range(10):
y = y + i + 1
print(y)
return y
print(f())
构造器(构造方法、初始化函数)
what:实例化一个对象时,第一个被调用的方法(__init__(self))
迭代器(Iteratior)
what:访问集合元素的方式,可记住遍历位置的对象(str、list、dict、set、tuple)。for语句底层就是迭代器。
how:两个基本方法iter()和next()。
生成器(Generator)
what:迭代器的一种实现。(列表生成式改成括号、yield)
带括号的列表生成器:(i for i in range(10))、next()、__next__()、StopIteration错误
带yield的生成器:yield保存当前状态,暂停,挂起函数。
最后
以上就是英俊鱼为你收集整理的Python装饰器、构造器、生成器、迭代器的全部内容,希望文章能够帮你解决Python装饰器、构造器、生成器、迭代器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复