首页 > 编程语言 > 详细

19 Python - 函数与Lambda表达式

时间:2019-07-05 20:06:25      阅读:109      评论:0      收藏:0      [点我收藏+]

函数与Lambda表达式

01 函数传参(回顾)

  不可变传复制,可变传指针地址

  一类不可以改变:整型、浮点型、字符串、Tuple。传递不可变类型,传递副本给函数,函数内操作不影响原始值

  一类可以改变,列表 字典表。传递可变类型,传递地址引用,函数内操作可能影响原始值。如果不想改变可以传递副本。

 

02参数匹配

  ①   参数匹配:默认位置匹配
  ②   参数匹配:顺序打乱,按名称匹配
  ③   参数匹配:有默认值可省略传值

技术分享图片

 

 

  ④   参数匹配:传多个那就传Tuple

  如果多个值逐个传递,形参需要用*来接收

技术分享图片

 

 

  如果传递整个list,形参和实参都需要*

技术分享图片

 

 

 

⑤   参数匹配:传递键值对就传dict,用**

  如果一个一个传递键值对,形参用**

  如果整体传递键值对,形参和实参都用**

     技术分享图片

 

 

 

03Lambda表达式

①   什么是Lambda表达式

  简单理解:一个匿名函数,省略了定义函数时def 名称 括号 冒号 return

   技术分享图片

 

下面是一个例子:

 技术分享图片技术分享图片

 

 

多个参数例子

 技术分享图片技术分享图片

 

 

 

  注意:Lambda表达式需要用一个变量来接收如例子中的f或f1 或者另一种方法就是用括号即(Lambda)(实参)

  下面采用的是括号括起整体来加个括号,然后用(name)传参,个人理解就是把lambda以函数传参形式执行

   技术分享图片

  技术分享图片

 

 

②   为什么用Lambda表达式

  简洁  便于函数嵌套

 

③   例子:如果某些内容仅用一次或临时使用,定义成函数有些浪费,就可以考虑Lambda表达式

  代码中两个用函数,一个用lambda表达式

   技术分享图片

 

  解释action就是引用了各个函数,

  注意引用函数时函数名称后不要加(),否则函数要执行了。这样好处就是便于函数间的切换。

     技术分享图片

 

代码三个用表达式

     技术分享图片

 

19 Python - 函数与Lambda表达式

原文:https://www.cnblogs.com/yijiexi/p/11140482.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!