美文网首页python
python的内置模块functools

python的内置模块functools

作者: 测试探索 | 来源:发表于2022-11-13 21:40 被阅读0次

    一、偏函数(partial)

    1-1:偏函数的作用

    当函数的参数个数太多,需要简化时,使用 functools.partial 可以创建一个新的函数,这个新函数可以固定住原函数的部分参数,从而在调用时更简单。

    def work(name,age,sex):
        print(name,age,sex)
    
    work2 = partial(work,name = "lemon")
    work2(age = 11,sex = "女")
    
    结果

    二、wraps(内置的装饰器函数):

    2-1:作用

    将一个函数的特殊属性保存到另一个函数上

    2-2:应用场景

    消除装饰器的副作用

    def func():
        """这个是func函数"""
    
    @wraps(func)
    def work():
        """这个是work函数"""
        print("----work---")
    
    print(work,work.__name__,work.__doc__)
    work()
    
    image.png

    三、lru_cache(内置的装饰器函数)

    3-1:作用:

    对函数执行的结果进行缓存

    3-2:应用场景

    提升递归函数的执行效率

    # 缓存同一个函数 相同参数执行的结果
    @lru_cache(maxsize=128)
    def work(n):
        if n == 1:
            return 1
        else:
            return work(n - 1) * n
    
    print(work(6))
    
    image.png

    相关文章

      网友评论

        本文标题:python的内置模块functools

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