python基础-匿名函数

    一、匿名函数

        1.匿名函数是什么?   

          只调用一次的函数,形式以lambda表达式存在,表达式的结果即是函数返回值

        2.为什么要有匿名函数?

          ambda有起到速写函数的作用,允许在使用的代码内嵌入一个函数的定义。在仅需要嵌入一小段可执行代码的情况 下,就可以带来更简洁的代码结构。

          节省内存开销。不产生名称空间。

          

            但内存地址还存在。影响不大

                      

        3.怎么用

          a.像普通函数版般使用

            ps: 内存地址+([参数]) 使用。

          

         

          b.常见使用,与其它函数一起使用

          例1:求s = {

                  'egon': 3000,
                'alex': 50003,
                'lxx': 1023,
                'yuanhao': 34012
                 }
              工资最高的名字
              max 内置函数默认以key比较
              

                

              pass:指定函数给max 参数 key.

                

              匿名函数:

                

             例2:完成对例1 字典排序 按照薪资大小排序。sorted默认按照key从小到大排序

               nums = [3,1,4,6,7,2] 排序

               sorted函数默认从小到大排序

               

               sort 从大到小排序。利用reverse参数

                

               

               从小到大

               

                   从大到小

               

               

           4.跟匿名函数使用有关系的内置函数 map,reduce,filter

              map:映射。 指定规则,将原对象映射成新对象

              例:names = ['alex', 'egon', 'lxx', 'wxx'] 每个元素添加‘_dSB’结尾

                

              filter:过滤,指定规则,生成符合条件的新对象

              例:names = ['alex_teacher', 'egon_teacher', 'lxx_boss', 'wxx_emp'] 找出所有老师

                

               和列表生成式比较:

               

               有啥区别:

               filter 返回的新对象 是可迭代对象 含有__next__

               列表生成式返回的 不是

              reduce:合并,指定规则,合成符合规则的新的对象

              

                

                

猜你喜欢

转载自www.cnblogs.com/linbin7/p/10629824.html
今日推荐