1.请实现一个装饰器,把函数的返回值+100然后返回
def wapper(func):
def innner(*args,**kwargs):
ret=func(*args,**kwargs)
ret=print(ret+100)
return ret
return innner
@wapper
def func(number):
return int(number)
func(100)
###结果:200
2.请实现一个装饰器,通过一次调用使函数重复执行5次
#Python学习交流群:725638078
def wapper(func):
def innner(*args,**kwargs):
count=0
while count<5:
func(*args,**kwargs)
count+=1
return innner
@wapper
def func():
print("执行")
func()
3.请实现一个装饰器每次调用函数时,将函数名字及调用函数的时间点写入文件中
import time
def wapper(func):
def inner(*args,**kwargs):
with open("log",encoding="utf-8",mode="a+") as f:
structime=time.localtime()
f.write(f'北京时间:{time.strftime("%Y-%m-%d %H:%M:%S",structime)} 函数名字为:{func.__name__}\n')
ret=func(*args,**kwargs)
return ret
return inner
@wapper
def func():
print("执行")
func()
到此这篇关于 Python装饰器的练习题的文章就介绍到这了,更多相关装饰器 习题内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
结尾给大家推荐一个非常好的学习教程,希望对你学习Python有帮助!