python基础-匿名函数

本文深入探讨了Python中匿名函数的概念与应用,解析其如何简化代码结构,节省内存开销。通过实例展示了匿名函数在max、sorted等内置函数中的运用,并对比了匿名函数与列表生成式的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    一、匿名函数

        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:合并,指定规则,合成符合规则的新的对象

              

 

                

                

 

转载于:https://www.cnblogs.com/linbin7/p/10629824.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值