python lambda简单介绍

python lambda

在python中,如果想要创建函数需要使用关键字def,而如果想要创建匿名函数,就需要使用lambda。

lambda创建的函数和def创建的函数有什么区别?

  1. def创建的函数是有名称的,而lambda没有
  2. lambda会创建一个函数的对象,但是却不会把对象给一个标识符,而def 会把函数对象赋值给一个变量
  3. def 是一条语句,而lambda它只是一个表达式

    y = lambda x:print(x)
    y(10) # 10

例如上面,通过lambda创建了一个表达式,x相当于形参,代码整体来看非常的简单高效。

通常情况下,lambda 可以直接作为列表或者字典的成员,如下:

# 创建一个列表,将通过表达式lambda创建的表达式当做列表中的元素
list_test = [lambda a:a*3,lambda b:b*4]
# 给列表中设置值
x = list_test[0](3)
y = list_test[1](2)
print(x,y) # 9 8 

那么相同的操作,在列表中,只能够使用lambda,没有办法使用def替代,因为def是语句,在列表中只能够是表达式。而lambda表达式在“:”之后只能有一个表达式,通常情况下,return语句能够返回的可以放在lambda后面,不能够返回的同样也不能够放在其后。因此,最好不要将if或者for这样的语句放在lambda表达式的后面,lambda最好只用来定义一些简单的函数。

时间: 2024-11-14 22:02:42

python lambda简单介绍的相关文章

Python的简单介绍/解释器/变量/变量的数据类型/用户交互及流程控制(if)

一.Python的简单介绍 1.python是一门 解释型弱类型编程语言. 2.特点: 简单.明确.优雅 二.python的解释器有哪些 CPython -- 官方提供的.,内部使用c语言来实现 IPython -- IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的.好多很多国产浏览器虽然外观不同,但内核其实都是调用了IE PyPy -- PyPy是另一个Python解释器,它的

Python基础-linux/window下python安装简单介绍

1.linux安装python linux : 无需安装,自带原装Python环境 2. linux更新python2.7.5-python3.7.4 一.查看当前linux安装的python版本 [[email protected] ~]# python -VPython 2.7.5 二.安装gcc,用于编译Python源码 [email protected] soft]#yum install gcc gcc-c++ -y  三.下载最新的python包并安装 进入python官网(http

python的简单介绍

一.python特性概要 1.python是解释型语言,c是编译型语言 脚本解释性语言的内部机制,在运行脚本之后,得到结果之前需要做的工作 1.python先将脚本编译成字节码文件(pyc,pyo) 2.python虚拟机解释并运行字节码文件 # cat hello.py print 'Hello world' # python hello.py Hello world # cat hello.py print 'Hello guys' # python hello.py  #修改之后,不需要编

python sshtunnel 简单介绍

背景,公司的很多服务包括数据库访问都需要通过跳板机访问,为日常工作及使用带来了麻烦,特别数python直接操作数据更是麻烦了,所以一直想实现python 通过跳板机访问数据库的操作. 安装 pip3.6 install sshtunnel 使用 sshtunnel 跳转登录数据库 链接postgresql,其他数据类似 # FileName : pgconn.py # Author : Adil # DateTime : 2018/6/15 15:19 # SoftWare : PyCharm

python虚拟环境简单介绍

什么是python虚拟环境? 通俗的来讲,虚拟环境就是从电脑独立开辟出来的环境,相当于一个副本或备份,在这个环境你可以安装私有包,而且不会影响系统中安装的全局Python解释器. 为什么要用虚拟环境 在实际项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,如Scrapy.Beautiful Soup等,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这样需要我们根据需求不断的更新或卸载相应的库.直接怼我们的Python环境操作会让我们的开发环境和项目造成很多不必要的麻烦,

Python lambda介绍

在学习python的过程中,lambda的语法时常会使人感到困惑,lambda是什么,为什么要使用lambda,是不是必须使用lambda? 下面就上面的问题进行一下解答. 1.lambda是什么? 看个例子: 1 g = lambda x:x+1 看一下执行的结果: g(1) >>>2 g(2) >>>3 当然,你也可以这样使用: lambda x:x+1(1) >>>2 可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入

python lambda表达式简单用法【转】

python lambda表达式简单用法 1.lambda是什么? 看个例子: g = lambda x:x+1 看一下执行的结果: g(1) >>>2 g(2) >>>3 当然,你也可以这样使用: lambda x:x+1(1) >>>2 可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为: 1 def g(x):2 return x+1 非常容易理解,在这里lambda简化了函数定义

python的列表,元组和字典简单介绍

引 入 java                                   python 存取多个值:数组或list集合 ------------------------> 列表,元组 key-value格式:    Map        ------------------------>    字典 自己学习发现,java跟python这两门面向对象语言在数据类型的定义上,很多思想都是互通的,这里不说java,简单介绍一下python的列表,元组和字典. 一.列表 List: 最通

Python 爬虫(1)简单介绍

Python上手很容易,免费开源,跨平台不受限制,面向对象,框架和库很丰富. Python :Monty Python's Flying Circus (Python的名字来源,和蟒蛇其实无关). 通过homebrew和pyenv可以维护多个Python版本. 相关知识 HTML HTTP = HyperText Transfer Protocol URI = Uniform Resource Identifier 强调资源 URL = Uniform Resource Locator 强调资源