Python基础-lambda表达式与三元运算

一、lambda表达式

 1 >>> def add(x,y):           #定义一个加法函数
 2     return x+y              #返回两个参数的相加的值
 3
 4 >>> z=f(3,4)
 5 >>> print(z)
 6 7                                     #调用加法函数返回7
 7 >>> lambda x,y:x+y
 8 <function <lambda> at 0x0000020F385B86A8>
 9 #可以看到lambda是一个   function(函数)类对象
10 >>> f=lambda x,y:x+y          #功能实现的跟add(x,y)一样
11 >>> f(1,2)
12 3
13 >>> f(3,4)
14 7
15 >>> def multiply(x,y):
16     return x*y
17
18 >>> multiply(3,4)
19 12
20 >>> multiply=lambda x,y:x*y
21 >>> multiply(3,4)
22 12
23 >>> def subtract(x,y):
24     return x-y
25
26 >>> subtract(3,4)
27 -1
28 >>> subtract=lambda x,y:x-y
29 >>> subtract(3,4)
30 -1
31
32 >>> def divide(x,y):
33     return x/y
34
35 >>> divide(4,2)
36 2.0
37 >>> divide=lambda x,y:x/y
38 >>> divide(4,2)
39 2.0
40
41 #上面的乘法函数,减法函数,除法函数都可以用lambda表达式来代替,更方便

从上面可以看出lambda表达式可以很方便的用来代替简单的函数

二、三元运算

1、下面来看看什么是三元运算

2、python的三元运算格式如下:

result=值1 if x<y else 值2    这个是什么意思呢,就是结果=值1 if 条件1 else 值2

 1 >>> def f(x,y):
 2     return x - y if x>y else abs(x-y)
 3 #如果x大于y就返回x-y的值 ,否则就返回x-y的绝对值
 4
 5 >>> f(3,4)      #3<4,不满足if 条件,它返回else里面的绝度值
 6 >>> f(4,3)
 7 >>> def f(x,y):
 8     return 1 if x>y else -1
 9 #如果x大于y就返回x-y的值 ,否则就返-1
10 >>> f(3,4)     #3小于4 , 返回-1
11 -1
12 >>> f(4,3)      #4大于3,返回1
13 >>>
时间: 2024-10-13 22:23:33

Python基础-lambda表达式与三元运算的相关文章

python中的lambda表达式与三元运算

1 >>> def add(x,y): #定义一个加法函数 2 return x+y #返回两个参数的相加的值 3 4 >>> z=f(3,4) 5 >>> print(z) 6 7 #调用加法函数返回7 7 >>> lambda x,y:x+y 8 <function <lambda> at 0x0000020F385B86A8> 9 #可以看到lambda是一个 function(函数)类对象 10 >

python 全栈 python基础 (五)三元运算 字符编码 元组 集合 三级菜单优化!

三元运算 条件判断不能加冒号: a=3 b=5 c=a if a<b else b oct() 转成八进制的简写:16进制 标志:BH为后缀或是0x为前缀hex() 转成16进制 元组 跟列表是一样一样的!但它是只读列表,没有更改的权限! dir() 把传入的数据类型的,所有方法以列表的形式返回.作用: 明确的表示 元组里存储的数据是不应该被修改的!!! list(tuple元组) 变成列表 tuple(list列表) 变成元组 集合 setlinux ={"","&q

Python基础(9)三元表达式、列表解析、生成器表达式

一.三元表达式 三元运算,是对简单的条件语句的缩写. # if条件语句 if x > f: print(x) else: print(y) # 条件成立左边,不成立右边 x if x > y else y # 三元表达式 python的三元运算格式如下: result=值1 if x<y else 值2 # 如果条件成立,那么将"值1"赋值给result变量,否则,将"值2"赋值给result变量 二.列表解析 列表解析:用三元表达式,将结果写入列

python基础—lambda、内置函数、三元函数(深入学习)

一. 三元运算 例: 二. Lamdba表达式 例: 三. 内置函数 1. 高级函数: 1)Map(函数名,参数):使用函数遍历参数,并显示每个参数的结果 2)Reduce(函数名,参数):使用函数依次遍历参数,但至少两个参数 3)Filter(函数名,参数):调用函数,遍历参数,只有返回True的结果 4)Zip(序列A,序列B*****):接收多个序列化类型的数据,对各序列化数据中的元素, 按索引位置分类成一个个元组,元组的个数以元素最少的序列为准,以列表的方式显示. 2. 其他函数

python 中lambda表达式

一.lambda函数 1.lambda函数基础: lambda函数也叫匿名函数,即,函数没有具体的名称,而用def创建的方法是有名称的.如下: [python] view plain copy """命名的foo函数""" def foo():return 'beginman' #Python中单行参数可以和标题写在一行 """lambda关键字创建匿名函数,该表达式同以上函数""" l

python基础8 数据类型和数据运算

本节内容: 数据类型 数据运算 入门拾遗 参考网页 数据类型 数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-231-231-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值范围为-263-263-1,即-9223372036854775808-9223372036854775807 long(长整型) 跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长

Python之lambda表达式和内置函数

lambda表达式其实就是简化的函数表达式. 它只用于处理简单逻辑, 它会自动return数据 通常定义一个函数,按照以下形式: def  func(arg):       return arg +1 result = func(100) print result 101 以上函数用lambda表达式可以这么写: func2 = lambda a: a+1 result = func2(100) print result 在lambda表达式中,func2 相当于函数表达式中的func,即函数的

Python的lambda表达式

使用lambda来创建匿名函数,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python lambda还有哪些和def不一样呢? 1 python lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符,而def则会把函数对象赋值给一个变量.2 python lambda它只是一个表达式,而def则是一个语句. 如果你在python 列表解析里用到python lambda,我感觉意义不是很大,因为python lambda它会创建一个函数对象,但马上又给丢弃了,因

Python学习-lambda表达式

lambda只是一个表达式,函数体比def简单很多.lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去.lambda表达式是起到一个函数速写的作用.允许在代码内嵌入一个函数的定义. #求三个数的和1 f = lambda x,y,z:x+y+x 2 print(f(1,2,3)) #4 3 4 f = lambda x,y,z:x+y+z 5 print(f(1,2,3)) #6 在常规的def函数构造中,可以有任意数量的语句,并且在def函数定义中