知识点补充:有意思的函数合集

知识点补充:有意思的函数合集

  • 函数的返回值

    def f1():
        print('f1')
        return f3()
    
    def f3():
        print('f3')
    
    a = f1()
    print(a)
    #输出结果为
    f1
    f3
    None #注意此处的输出结果
    
    
  • 函数的层次

    def func(num):
        def inner():
            print(num)
        return inner
    
    result = []
    for i in range(10):
        f = func(i)
        result.append(f)
    
    print(i)
    print(result)
    v1 = result[0]() #注意此处运行的是哪一个函数
    v2 = result[9]()
    print(v1,v2)
    #输出结果为
    9
    [<function func.<locals>.inner at 0x0000020603166DC0>, <function func.<locals>.inner at 0x0000020603166E50>, <function func.<locals>.inner at 0x0000020603166EE0>, <function func.<locals>.inner at 0x0000020603166F70>, <function func.<locals>.inner at 0x000002060317E040>, <function func.<locals>.inner at 0x000002060317E0D0>, <function func.<locals>.inner at 0x000002060317E160>, <function func.<locals>.inner at 0x000002060317E1F0>, <function func.<locals>.inner at 0x000002060317E280>, <function func.<locals>.inner at 0x000002060317E310>]
    0
    9
    None None
    
  • 推导式中循环的 i 值

  • v =[lambda:i for i in range(10)]
    result = v[5]()
    print(result)
    #输出结果为
    9
    
  • 不太清楚 func(name = None)的具体含义

原文地址:https://www.cnblogs.com/yangzilaing/p/13494057.html