Python学习笔记010——匿名函数lambda
1 语法
my_lambda = lambda arg1, arg2 : arg1 + arg2 + 1
arg1、arg2:参数
arg1 + arg2 + 1 :表达式
2 描述
匿名函数不需要return来返回值,表达式本身结果就是返回值。
lambda 仅简洁了代码,并不会提高程序运行效率
如果可以用 for...in...if 来完成的,最好不使用匿名函数lambda
使用lambda时,函数内不要包含循环、嵌套;如果存在,则最好使用def函数来完成,这样的代码可读性和复用性均较高
lambda用来编写简单的函数,而def用来处理更强大的任务。
3 示例
3.1 无参数的匿名函数
>>> a = lambda:5 >>> a <function <lambda> at 0x7f20f53be2f0> >>> a() 5 >>>
3.2 单个参数的匿名函数
a = lambda x:x+1 print(a(2))
运行: 3
3.3 多参数的匿名函数
a = lambda x, y: x + y + 1 print(a(1,2)) print(a(y=3,x=2))
运行:
4 6
3.4 其他
>>> lambda x:x+1(1) <function <lambda> at 0x7f20f4cfb9d8>
有的博客上说输入第一行可以直接得到结果,其实仅仅得到了匿名函数的地址(十六进制)
>>> lambda x:x+1(1) <function <lambda> at 0x7f20f4cfb9d8> >>> id(lambda x:x+1(1)) 139779554729768 >>> hex(id(lambda x:x+1(1))) '0x7f20f4cfb9d8'
如果需要获得函数值,则
>>> (lambda x:x+1)(1) 2
同样
print(lambda x:x+1(1)) # <function <lambda> at 0x7fa097b54f28>
计算
(lambda x : (lambda y: (lambda z: x + y + z)(1))(2))(3)
等于多少? 6
参考python的匿名函数lambda解释及用法,Python学习笔记(十二):lambda表达式与函数式编程,Python lambda介绍
Python学习笔记010——匿名函数lambda的更多相关文章
- python 学习笔记2 匿名函数
# 匿名函数 lambda a,b : a+b# a.j.from functools import reduce students = [{'name': '张三', 'age': 18, 'hei ...
- Python学习笔记之常用函数及说明
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多 ...
- 记录我的 python 学习历程-Day13 匿名函数、内置函数 II、闭包
一.匿名函数 以后面试或者工作中经常用匿名函数 lambda,也叫一句话函数. 课上练习: # 正常函数: def func(a, b): return a + b print(func(4, 6)) ...
- 『Python基础-14』匿名函数 `lambda`
匿名函数和关键字lambda 匿名函数就是没有名称的函数,也就是不再使用def语句定义的函数 在Python中,如果要声匿名函数,则需要使用lambda关键字 使用lambda声明的匿名函数能接收任何 ...
- python学习笔记5-自定义函数
1 自定义函数 (1)函数代码块以def关键字开头,然后函数标识符名称和圆括号 (2)任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数 (3)函数的第一行语句可以选择性的使用文 ...
- python学习笔记12(函数三): 参数类型、递归、lambda函数
一.函数参数的类型 之前我们接触到的那种函数参数定义和传递方式叫做位置参数,即参数是通过位置进行匹配的,从左到右,依次进行匹配,这个对参数的位置和个数都有严格的要求.而在Python中还有一种是通过参 ...
- python学习笔记4-内置函数、匿名函数、json处理
print(all([1,2,3,4]))#判断可迭代的对象里面的值是否都为真 print(any([0,1,2,3,4]))#判断可迭代的对象里面的值是否有一个为真 print(bin(10))#十 ...
- python 学习笔记6(函数)
函数 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 1.减少代码重复 2.保持代码的一致性 3.方便修改,可扩展性 函数的创建 #简单 ...
- Python学习笔记总结(二)函数和模块
一.函数 函数的作用:可以计算出一个返回值,最大化代码重用,最小化代码冗余,流程的分解. 1.函数相关的语句和表达式 语句 例子 Calls myfunc(‘diege', ...
随机推荐
- Remove Duplicates from Sorted List leetcode java
题目: Given a sorted linked list, delete all duplicates such that each element appear only once. For e ...
- SVN jsvnadmin 安装与基本使用
1. jsvnadmin 介绍 https://code.google.com/p/jsvnadmin/ Svn Admin是一个Java开发的管理Svn服务器的项目用户的web应用.安装好Svn服 ...
- Java基础(六):继承
1.继承的概念: 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具 ...
- Jenkins——应用篇——插件使用——Publish over SSH
本文是jenkins应用系统文章的一部分,大部分来自工作和学习中的实践,部分内容来自官方文档和网友的文章,引用的文章会在"參考资料"部分附上原始链接,如无意中侵犯您的权利.请联系Q ...
- jquery文字填写自动高度
下面开始写一个jquery插件 (function($){ $.fn.autoTextarea = function(options) { var defaults={ maxHeight:null, ...
- 使用grep进行文本查找
命令模式: grep "文本" -rl 路径 例子: grep "w3.the.abc.com" -rl /home/hy/fluent3 有时候需要排除掉一些 ...
- windowsclient开发--duilib显示html
今天与大家分享的就是duilib这个库中,怎样做到显示html的. 有些控件,如Text能够通过showhtml函数来设置是否显示html富文本. 加粗 {b}加粗{/b} 斜体 {i}斜体{/i} ...
- shell中使用if判断时用到的一些参数
shell 编程中使用到得if语句内判断参数 –b 当file存在并且是块文件时返回真 -c 当file存在并且是字符文件时返回真 -d 当pathname存在并且是一个目录时返回真 -e 当path ...
- linux more 上一页,下一页
linux more 上一页,下一页 使用more命令可以分页查看内容: 如: more install.txt 分页查看文本内容: 按回车:默认下一行数据: 按空格键盘,默认下一页,以当前屏幕为单位 ...
- validationEngine 表单验证插件使用
废话少说,直接上代码,可拷贝直接运行: <!DOCTYPE html> <html lang="zh"> <head> <meta cha ...