参考:匿名函数

NOTE

1.Python对匿名函数提供了有限的支持。

eg.

#!/usr/bin/env python3

def main():
lis = list(map(lambda x: x*x, [1, 2, 3, 4, 5]))
print(lis) if __name__ == '__main__':
main()
sh-3.2# ./lambda1.py
[1, 4, 9, 16, 25]

可以看出,lambda相当于函数:

def func(x):
return x*x

2.关键字lambda表示匿名函数,冒号前面的x表示函数参数。

可以参考这篇博客:Python中lambda表达式学习

3.匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果。

4.用匿名函数有个好处,因为函数没有名字,不必担心函数名冲突

5.匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量来调用该函数.

#!/usr/bin/env python3

def main():
f = lambda x: x*x
print(f(int(input()))) if __name__ == '__main__':
main()
sh-3.2# ./lambda2.py
9
81
sh-3.2# ./lambda2.py
100
10000

6.同样,也可以把匿名函数作为返回值返回。(意义不明)

def func(x, y):
return lambda: x*y

2017/2/18

最新文章

  1. Linux资源站
  2. Android Tab -- 使用TabWidget、TabHost、TabActivity来实现
  3. WinStore之Application Data
  4. 百度地图ip定位,不算bug的bug
  5. Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)
  6. C# 判断是否为闰年的条件各是
  7. 关于delete
  8. 疑问:关于postgres的to_number()
  9. Stack-overflow, how to answer
  10. 机器学习:Python实现聚类算法(一)之AP算法
  11. MySQL无法插入中文的解决方案
  12. WPF DevExpress ChartControl用法
  13. Mysql 数据库安装与配置详解
  14. selenium批量翻译
  15. CEF3编译添加mp4支持(对应CefSharp63.0.3),chromium63(3239),附release下载
  16. 数据分析——Matplotlib图形绘制
  17. LintCode——全排列
  18. Listview多tab上滑悬浮
  19. 关于修改bug的思考
  20. laravel form表单提交

热门文章

  1. 运行npm install出现警告
  2. mac必装工具以及mac使用介绍
  3. NIO之Buffer的clear()、rewind()、flip()方法的区别
  4. MyBatis DAO层传递参数到mapping.xml 几种方式
  5. linux加载硬盘过程
  6. nginx ---refine---按需时间/流量进行调整后台服务器---geocity,proxypass
  7. linux: convmv =-======pkgs.org
  8. Django - Cookie、Session、自定义分页和Django分页器
  9. BBS - 文章评论
  10. mysql 大表优化