装饰器
Posted shy-123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰器相关的知识,希望对你有一定的参考价值。
装饰器
作用:
用于扩展原函数功能的一种函数
将被装饰函数函数作为参数传入,装饰器内部定义一个函数,内部函数的作用是调用被装饰函数,定义新功能,为被装饰函数传递参数,最后要返回定义的函数
实例:
import time
def func2(fun):
def func3(*args,**kwargs):
print(‘输入数据是‘,args)
fun(*args,**kwargs)
return func3
@func2
def func(a, b):
print("hello,here is a func for add :")
time.sleep(1)
print("result is %d" % (a + b))
func(2,5)
生成器
通过边循环边计算的方式生成列表,避免一次创建列表占用大量内存的问题
注意列表生成式和生成器之间的差别:
l=[x*x for x in range(10)] #列表生成式,一次创建列表,占用内存
g=(x*x for x in range(10)) #生成器,通过next(g)或for循环获取
以上是关于装饰器的主要内容,如果未能解决你的问题,请参考以下文章