下面代码简单举例介绍以下 lambda的用法。

from functools import reduce#1 python lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符,而def则会把函数对象赋值给一个变量。
#2 python lambda它只是一个表达式,而def则是一个语句。
#匿名函数lambda
num = lambda x,y : x+yprint("lambda")
print(num(3,4))#上面的代码可以使用 def 定义函数实现def add(x,y):return x+y
print("def")
print(add(3,4))'''
由上例可以看出
lambda的一般形式是关键字lambda后面跟一个或多个参数,
紧跟一个冒号,以后是一个表达式。
lambda是一个表达式而不是一个语句。
它能够出现在Python语法不允许def出现的地方。作为表达式,
lambda返回一个值(即一个新的函数)。
lambda用来编写简单的函数,而def用来处理更强大的任务。'''#lambda 使用举例
#python2 的用法
'''
#python2  是如下写法,但是python 3中修改了写法。见如下写法
foo = [2, 18, 9, 22, 17, 24, 8, 12, 27]#
print(filter(lambda x: x % 3 == 0, foo))#--[18, 9, 24, 12, 27]
map_list = list()
print(map(lambda x: x * 2 + 10, foo))
#--[14, 46, 28, 54, 44, 58, 26, 34, 64]
print(reduce(lambda x, y: x + y, foo))
'''#python 3 的用法
#Python中,也有几个定义好的全局函数方便使用的,filter, map, reduce  

foo = [2, 18, 9, 22, 17, 24, 8, 12, 27]
num_list = list(filter(lambda x: x % 3 == 0, foo))
print(num_list)#--[18, 9, 24, 12, 27]
map_list = list(map(lambda x: x * 2 + 10, foo))
print(map_list)
#--[14, 46, 28, 54, 44, 58, 26, 34, 64]'''
reduce函数:
在Python 3里,reduce()函数已经被从全局名字空间里移除了,它现在被放置在fucntools模块里 用的话要 先引
入:
'''
print(reduce(lambda x, y: x + y, foo))# 下面的代码主要是为了 体现lambda 的其他用法,可以传递参数。而不使用的时候 不能传递参数# Button(top, text="计算", command=lambda: on_click(top, base_text)).pack()
# top.mainloop()# 这种 直接command = 方法名的方式,函数是不能传递参数的,所以为了能传递参数使用了上面的方法。
# Button(top, text="计算", command= on_click).pack()

转载于:https://www.cnblogs.com/Skyyj/p/6697620.html

Python Lambda 的简单用法相关推荐

  1. python装饰器实例-Python装饰器简单用法实例小结

    本文总结分析了Python装饰器简单用法.分享给大家供大家参考,具体如下: 装饰器在python中扮演着很重要的作用,例如插入日志等,装饰器可以为添加额外的功能同时又不影响业务函数的功能. 比如,运行 ...

  2. Python中yield简单用法

    Python中yield简单用法 你或许知道带有yield的函数在Python中被称之为generator,那何为 generator? 我们暂时抛开generator,先从一个常见编程题目开始,循序 ...

  3. python -lambda表达式的用法

    匿名函数 lambda的意义: 利用lambda我们可以速写函数,不用去定义函数就可以直接使用 y = lambda x,z:5+9*x+8*z print(y(2,4)) 从例子中可以看到,lamb ...

  4. Python——lambda函数基本用法

    一.lambda 语法 lambda 函数的语法只包含一个语句,表现形式如下: lambda [arg1 [,arg2,.....argn]]:expression 其中,lambda 是 Pytho ...

  5. 五分钟理解yield在python中的简单用法,让你不再迷惑

    很多同学无论是在学习python还是使用python的过程中,都会遇到yield关键字,这个让人头大的问题,今天,就给大家分享一下我自学yield的心路历程 基本概念: (1)在 Python 中,使 ...

  6. 细说Python Lambda函数的用法,建议收藏!

    本文分享自华为云社区<从零开始学python | 什么是Lambda函数以及如何使用它们?>,原文作者:Yuchuan . 名称是用于引用或寻址任何实体的约定.我们周围的几乎所有事物都有名 ...

  7. 关于python -m的简单用法

    简单用法 1.python -m http.server 8000 执行后,在本机打开" http://localhost:8000 ",或者在局域网内的其它机器上打开" ...

  8. python lambda表达式及用法_python lambda表达式简单用法

    条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即: # 普通条件语句 if 1 == 1: name = 'wupeiqi' else: name = 'alex' # 三元运 ...

  9. python lambda表达式及用法_Python:lambda表达式和yield关键字理解与使用讲解

    一.lambda表达式 1.1.lambda表达式理解 lambda的主体是一个表达式,而不是一个代码块,仅仅能在lambda表达式中封装有限的逻辑进去.如果要通俗的理解lambda表达式,可以结合C ...

最新文章

  1. CSS的元素显示模式(块内元素和行内元素)
  2. 一些Java反编译工具/源代码查看工具的介绍
  3. Navisworks Api Quantification
  4. Zookeeper 的 ZAB 协议
  5. wpf datepicker 选择时分秒_[Angular 组件库 NG-ZORRO 基础入门] - DatePicker
  6. wordpress阿里百秀主题v7.7
  7. c语言实现线程相关操作,如何用C语言实现多线程
  8. SU Demos-03T-F Analysis-01Sugabor
  9. [转]Vue Cli3 + VS Code 愉快调试
  10. 液晶显示屏工作原理和点亮屏幕
  11. mac的word中添加带圆圈的数字
  12. Mac上有没有好用的WiFi无线网络管理工具?看这里
  13. HAL库配置 ADF4351 pll锁相环
  14. Multisim14 - 运行10版本文件时数码管一直显示为0的问题
  15. java找不到符号解决办法
  16. C#篇-值类型和引用类型
  17. 什么技术都只懂一点的蹩脚程序员
  18. 商业发掘 - 苹果 IOS 充值代充,充值卡为什么会便宜,以及其中的一些门道
  19. c语言键盘函数key,c语言获得键盘的按键
  20. Oracle创建数据库连接——DATABASE LINKS

热门文章

  1. 用FadingActionBar实现有头图的ActionBar
  2. 应用场景之Dynamic End Point(DEP)IPSec的配置
  3. TelephoneManage开始了
  4. lr接口压测_LoadRunner+Java接口性能测试
  5. Ubuntu中Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend)问题的解决
  6. Amber Group与1Token达成合作,引入CAM系统加码机构级财务方案
  7. 北岛创投发起7200万美元加密VC基金,保罗·都铎·琼斯参与投资
  8. Reef Finance与Manta Network就流动性解决方案达成合作
  9. 过去一年顶级借贷服务商BTC总托管资产平均增长超700%
  10. Zcash已发布ZIP 313提案