天天看点

王亟亟的Python学习之路(10)-匿名函数

又有好多天没有碰python的东西了,下午抽出点时间就补一篇介绍匿名函数

匿名函数在很多语言里都有,它可以使代码更加简洁、紧凑,模块化程度更高。

在jdk8里发现了lambda表达式的影子

以前我们要循环一个集合需要这样

现在可以这样

那么这么做的优势是什么?

1.不一定需要顺序处理list中的元素,顺序可以不确定 2.可以并行处理,充分利用多核cpu的优势 3.有利于jit编译器对代码进行优化

我们回到python,那么python是如何操作的呢?

一个自增的方法

那么用户匿名函数如何实现呢?

语法:

在上面的例子里

x 为lambda函数的一个参数

: 分割符

在lambda函数中不能有return,其实:后面就是返回值所以也就返回了传入的2+2=4

这里还是把表达式指向了一个对象,不然打印出来就是

为什么要用匿名函数?

程序一次行使用,所以不需要定义函数名,节省内存中变量定义空间 如果想让程序更加简洁时。

那我们再来说说其他的几种实现

有默认值的匿名函数

如果传参就把x等于传入的参数,如果不传参那就为默认值

源码地址:https://github.com/ddwhan0123/pythonexample/blob/master/示例/l9demo.py