美文网首页
编写统计函数执⾏次数装饰器

编写统计函数执⾏次数装饰器

作者: 晨颜 | 来源:发表于2023-03-03 20:03 被阅读0次

任意定义⼀个函数给其添加装饰器
要求:每次执⾏该函数,装饰器⾃动记录次数,记录需保存在⽂件中
以下代码可以实现装饰器⾃动记录次数,但不保存入文件

count = 0
def inner(func):
    def wrapper(*args,**kwargs):
        global count
        res=func(*args,**kwargs)
        count+=1
        print(count)
        return res
    return wrapper
l=[15,1,54,0,56,52,3,46,23,20,5]
@inner
def find(l,k):
    l.sort
    i=len(l)//2
    if l[i]==k:
        print("找到了")
    elif l[i]>k:
        find(l[i:len(l)+1],k)
    elif l[i]<k:
        find(l[0:len(l)],k)
find(l,20)

可以实现写入文件,但是无法将文件中的数值拿出来运算

count = 0
def inner(func):
    def wrapper(*args,**kwargs):
        global count
        res=func(*args,**kwargs)
        # with open('a.txt', 'w+', encoding='utf-8') as f:
        #     count=count+1
        #     f.write(count)
        with open('a.txt', 'w', encoding='utf-8') as f:
            count = count + 1
            f.write(str(count))
        #print(count)
        return res
    return wrapper
l=[15,1,54,0,56,52,3,46,23,20,5]
@inner
#二分查找法
def find(l,k):
    l.sort
    i=len(l)//2
    if l[i]==k:
        print("找到了")
    elif l[i]>k:
        find(l[i:len(l)+1],k)
    elif l[i]<k:
        find(l[0:len(l)],k)
find(l,20)
'''
c=0
with open('a.txt','r+', encoding='utf-8') as f:
    print(f.read())
    str_c=f.read().strip()
    # c=int(f.read().strip())+1
    c=int(str_c)
    c+=1
    f.write(str(c))
    print(c)
'''

相关文章

  • 记录两个装饰器

    统计函数被调用次数的装饰器 类中的某个方法用于装饰类中的其他方法

  • Python函数之装饰器

    装饰器:本质是函数,功能是装饰其他函数,就是为其他函数添加附加功能 编写装饰器的原则: 不能修改被装饰函数的源代码...

  • python 统计函数调用次数的装饰器

    import typesfrom functools import wraps def profiled(func...

  • 装饰器(decorators)

    装饰器让你在⼀个函数的前后去执⾏代码。 封装⼀个函数, 并且⽤这样或者那样的⽅式来修改它的⾏为,这就是装饰器所做的...

  • Python基础练习:函数练习

    练习点:创建函数,参数收集,嵌套函数,装饰器 1、创建函数 编写函数,对单词中的字母实现下列操作: -----根据...

  • 装饰器

    [TOC] 函数 函数定义 函数调用 高阶函数 嵌套函数 装饰器 装饰器=高阶函数+嵌套函数 基础装饰器 假设有一...

  • 031 Python语法之装饰器

    装饰器 装饰器格式 装饰器 本质是函数 功能是用于装饰其他函数,为其他函数附加其它功能 装饰器的原则 不能修改被装...

  • python装饰器2018-11-19

    装饰器也是个函数 装饰器有参数,参数是函数 装饰器有内嵌函数 装饰器有返回值,返回值是内嵌函数 装饰器使用时直接挂...

  • Python day30_闭包与装饰器

    闭包 装饰器 装饰器结论: 一个装饰器一个函数了解 二个装饰器装饰一个函数图解大法 二个装饰器装饰器一个函数内存图...

  • python——装饰器详解

    一、装饰器概念 1、装饰器 装饰器:一种返回值也是一个函数的函数,即装饰器。 2、装饰器目的 装饰器的目的:装饰器...

网友评论

      本文标题:编写统计函数执⾏次数装饰器

      本文链接:https://www.haomeiwen.com/subject/kzheldtx.html