l=[1,2,3]
两种方式变为可迭代:l._iter_() iter(l)
装饰器:装饰器本质就是函数,修饰其他函数,功能为其他函数添加附加功能
两个原则:1.不修改被修饰函数的源代码 2.不修改被修饰函数的调用方式
#计算运行时间 过程中没有修改函数源代码
import time def cal(l): start_time=time.time() #开始时间 res=0 for i in l: time.sleep(0.1) res+=i stop_time = time.time() #结束时间 print('函数的运行时间是%s' %(stop_time-start_time)) return res
装饰器的知识储备:
装饰起 = 高阶函数 + 函数嵌套 + 闭包