一、Lambda 表达式

概念:是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包。

原因:函数名并没有实际的意义,为了简便,所以推出了lambada表达式的语法糖!

注意:与其它语言不同,Python的Lambda表达式的函数体只能有单独的一条语句,也就是返回值表达式语句!

理解:匿名函数的等价形式来理解lambada表达式!

:虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖",由编译器帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。建议不要乱用,因为这就和某些很高级的黑客写的代码一样,简洁、难懂,、难以调试!

二、语法

<函数对象名> = lambda   <形式参数列表>:<表达式>

匿名函数的作用

1.不用命名,直接实现简单功能;但是如果只是"单个调用"的话,还是要命名变量2.让代码更加简洁

三、练习

"""
语法说明:匿名函数的关键字为 lambda冒号前面是 形参;冒号后面是返回值"""
from functools import reduce#(1)累加
# def add(x,y):
#     return  x+y
# print(reduce(add,range(10)))
print(reduce(lambda x,y:x+y,range(10)))#(2)阶乘
# def mypow(x):
#     return x**2
print(list(map(lambda x:x**2,range(5))))#(3)偶数
# def isood(num):
#     return num%2 ==0
print(list(filter(lambda x:x%2==0,range(100))))

练习2:高级

# 需求:求阶乘f = lambda func, n: 1 if n == 0 else n * func( func, n - 1 )print(f(f,4)) #24

练习3:无参

t = lambda: Trueprint(t()) #True

Python(十)lambada表达式相关推荐

  1. python过滤器 lambada表达式 可变元组字典参数**kwargs

    #过滤器的使用,判断是否是回文数字 #filter()的作用是从一个序列中筛出符合条件的元素.由于filter()使用了惰性计算,所以只有在取filter()结果的时候,才会真正筛选并每次返回下一个筛 ...

  2. 第十节 Java工具包-Collections 流--lambada表达式

     collection为核心的接口,包含了多种不同类型的集合以及多种不同数据结构的实现的类 list  set queue都是在collection接口下的所以都有.add()方法 package c ...

  3. Python十大装腔语法

    作者 | 许向武 责编 | 郭芮 来源 | CSDN 博客 Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文 ...

  4. python新手教程 从零开始-Python零基础从零开始学习Python十分钟快速入门

    原标题:Python零基础从零开始学习Python十分钟快速入门 学习Python的,都知道Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.Python是一种动态解释型的 ...

  5. python十大装b语法_Python 十大语法

    前言 Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识 ...

  6. 自学python编程免费教程-Python十分钟入门 自学python基础教程送你参考

    python十分钟入门.简介Python是一种动态解释型的编程语言.Python可以在Windows.UNIX.MAC等多种操作系统上使用,也可以在Java..NET开发平台上使用. 特点 1 Pyt ...

  7. [转载] Python十大装B语法

    参考链接: Python中的函数装饰器1(简介) Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了 ...

  8. Python十大装B语法(上)

    Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并 ...

  9. python十大语言_Python 语言之十大语法

    Python 是一种代表简单思想的语言,本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码.如能在实战中融会贯通.灵活使用. 01 for - else什么?不是 if ...

最新文章

  1. 谷歌正在测试一个人工智能系统,帮助视障人士参加跑步比赛
  2. 计算机本科211调剂到双非值得吗,经验分享:从双非到211,调剂是场快准狠的战役...
  3. linux存储--进程栈 线程栈 内核栈 中断栈(十六)
  4. 【LeetCode】128. 最长连续序列
  5. 【笔记】二叉树递归算法和非递归算法的实现 先序/中序/后续遍历 打印结点以及顺序数 构造二叉树
  6. hibernate连接mysql配置文件 分享
  7. HALCON示例程序measure_ring.hdev齿轮齿宽度测量
  8. 图嵌入综述 (arxiv 1709.07604) 译文五、六、七
  9. java上传组件_java上传组件FileUpload
  10. Spring Boot开发Web应用
  11. 阶乘数码(洛谷P1591题题解,Java语言描述)
  12. springboot秒杀课程学习整理1-1
  13. 色差仪软件的安装和电池充电
  14. Linux基础——为什么要学Linux?
  15. PHP语言的RSA算法加解密程序
  16. ffmpeg rtmp 不清晰_SRS流媒体服务器之RTMP协议分析(2)
  17. Helix QAC所提供的四种抑制方式
  18. 【WEB】web www http html hypermedia hypertext 技术名词的意思
  19. 跟踪信号发生器理论与操作
  20. orcad 连mysql_如何在OrCAD中建立电气互连

热门文章

  1. java树莓派温度传感器_怎样使用树莓派读取传感器上的温度和湿度
  2. 计算机总是提示网络电缆没有插,网络电缆没有插好原因与解决方法【图文教程】...
  3. Firebase使用总结(早期)
  4. java swing 总结_对Java 中Swing的小总结
  5. 《松本行弘的程序世界》浅读笔记
  6. 百度地图 -- 鼠标绘制工具DrawingManager
  7. 【LiteOS】华为LiteOS开发初体验
  8. let 连续复制_要在Word中使用“格式刷”对同一个格式进行多次复制时,应先用鼠标()。...
  9. 预编译及预处理的理解
  10. Learning to Rank系列之Pointwise方法