当前位置 博文首页 > python 定义函数 返回值只取其中一个的实现

    python 定义函数 返回值只取其中一个的实现

    作者:第二i 时间:2021-05-30 17:58

    看代码吧~

    def test():
        return 1,2
    a, b = test()
    1 2
    a, _ = test()
    1   
     
    # 说明 a, _ = test() 中 返回的是一个int类型 后续可直接运算
    # a, b = test()  返回值是一个元组, 直接运算报错

    补充:Python-装饰器(被装饰函数有返回值的情况)

    题目:

    装饰器实现一个函数计时器比较for循环与map,匿名函数的运算速度

    问题:

    被装饰的函数有返回值怎么办

    程序内容:

    import time
    import random
    import string
    import functools
    #问题:被装饰的函数有返回值
    li = [random.choice(string.ascii_letters) for i in range(100)]
    def timeit(fun):
        @functools.wraps(fun)  #为了保留被装饰函数的函数名和帮助文档信息
        def wrapper(*args,**kwargs):
            """这是一个wrapper函数"""
            start_time = time.time()
            res = fun(*args,**kwargs)
            end_time = time.time()
            print('运行时间为:%.6f' %(end_time - start_time))
            return res
        return wrapper
    @timeit
    def fun_list(n):
        """这是fun_list函数"""
        return [i * 2 for i in range(n)]
    @timeit
    def fun_map(n):
        """这是fun_map函数"""
        return list(map(lambda x:x*2,range(n)))
    print(fun_list(5000))
    print(fun_map(5000))
    

    测试:

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持站长博客。

    js
    下一篇:没有了