zoukankan      html  css  js  c++  java
  • 匿名函数:

    #这段代码

    def calc(n):
        return n**n
    print(calc(10))


    #换成匿名函数

    calc = lambda n:n**n
    print(calc(10))

    函数名 = lambda 参数 :返回值

    #参数可以有多个,用逗号隔开 #匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值

    #返回值和正常的函数一样可以是任意数据类型

    我们可以看出,匿名函数并不是真的不能有名字。 匿名函数的调用和正常的调用也没有什么分别。 就是 函数名(参数) 就可以了

    # def add(x,y):return x+y
    # add = lambda x,y:x+y
    # print(add(1,2))
    
    # print(max([1,2,3,4,-5],key=abs))
    
    # dic={'k1':10,'k2':100,'k3':30}
    # # print(max(dic.values()))
    # # print(max(dic))
    # print(max(dic,key=lambda k:dic[k]))
    
    
    # def func(x):
    #     return x*x
    # ret = map(lambda x:x*x,[1,2,3,4,5,6,7,8])
    # print(list(ret))
    
    # def func(num):
    #     return num>99 and num<1000
    ret = filter(func,[1,4,6,823,67,23])
    print(list(ret))
    
    
    # def func(num):
    #     return num>99 and num<1000
    ret = filter(lambda num: num>99 and num<1000,[1,4,6,823,67,23])
    print(list(ret))
    
    
    def func(num):
        return num > 10
    ret = filter(lambda num : num > 10,[1,4,6,823,67,23])
    print(list(ret))

    面试题:

    # d = lambda p:p*2
    # t = lambda p:p*3
    # x = 2
    # x = d(x)   #4 = d(2)
    # x = t(x)   #12 = t(4)
    # x = d(x)   #24 = d(12)
    # print(x)
    
    #2.现有两元组(('a'),('b')),(('c'),('d')),
    # 请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]
    # t1 = (('a'),('b'))
    # t2 = (('c'),('d'))
    # t3 = zip(t1,t2)  #[('a','c'),('b','d')]
    # print(list(map(lambda t:{t[0]:t[1]},[('a','c'),('b','d')])))
    
    #3.
    def multipliers():
        return (lambda x:i*x for i in range(4))
    print([m(2) for m in multipliers()])
    # i = 0
    # m =  lambda x:i*x
    # m(2)
    # i = 1
    # m =  lambda x:i*x
    # m(2)
  • 相关阅读:
    算法导论--平摊分析之聚集分析
    编译器开发系列--Ocelot语言3.类型名称的消解
    编译器开发系列--Ocelot语言2.变量引用的消解
    编译器开发系列--Ocelot语言1.抽象语法树
    算法导论--散列表的数学分析(精解)链表法
    Linux2.6内核协议栈系列--TCP协议2.接收
    日常‘说说’(回归 原森雨)
    那些玩枪战我特别想听到的声音!
    友链!
    晚安背后的秘密
  • 原文地址:https://www.cnblogs.com/biluo/p/7863018.html
Copyright © 2011-2022 走看看