目录
  • 1.请实现一个装饰器,把函数的返回值+100然后返回
  • 2.请实现一个装饰器,通过一次调用使函数重复执行5次
  • 3.请实现一个装饰器每次调用函数时,将函数名字及调用函数的时间点写入文件中

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装饰器的练习题的文章就介绍到这了,更多相关装饰器 习题内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

结尾给大家推荐一个非常好的学习教程,希望对你学习python有帮助!