Python三元运算和lambda表达式
一、三元运算
1、定义:三元运算是if-else 语句的快捷操作,也被称为条件运算。
2、结构:
[on_true] if [expression] else [on_false]
3、示例:
x,y = 3,4 # 等同于 x = 3 y = 4
bigger = x if x>y else y
print('结果:',bigger) # 结果:4
4、多层嵌套使用
示例:
a,b,c = 2,6,8 # 等同于 a = 2,b = 6,c = 8
max = a if a>b and a>c else (b if b>a and b>c else c)
print('max=',max) # max=8
二、lambda表达式
1、定义:lambda 函数是一种快速定义单行的最小函数,又称匿名函数,可以用在任何需要函数的地方 。
2、结构:
lambda 形参列表 : 函数返回值表达式语句
3、示例:
x = lambda a,b:a*b
print('res=',x(2,3)) # res= 6
注意:所谓匿名函数,也就是说可以不需要命名,只是临时一用,如下:
print(list(map(lambda x:x*x ,[1,2,3,4]))) # map()函数可以将一个函数映射到一个可枚举类型上面。
4、与一般函数的区别
#常规写法
def func(x,y):
return x*y
print(func(2,3)) # 匿名函数写法,作用与上面的func函数相同
func1 = lambda x,y:x*y
print(func1(2,3))
5、匿名函数,搭配其他方法使用,一次性使用
data = list(range(10)) # range转成列表
#列表元素自乘方法
print('自乘后:',list(map(lambda n:n*n ,data))) # 自乘后: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
三、lambda表达式和三元运算搭配使用(用得很多)
例如:
func = lambda x,y : x%y if x>y else x**y # 匿名函数结合三元运算
print(func(2,4)) # 输出: 16
Python三元运算和lambda表达式的更多相关文章
- 三元运算与lambda表达式
#三元运算,就是对if else的简写 if 1 == 1: print("jasper") else: print("sb") 三元运算写法 name=&qu ...
- 三元运算和lambda表达式
19.三目运算,三元运算: if else 的简写: name = 'alex' if 1 == 1 else 'SB' ==> 等价于 if 1 == 1: ...
- Python_三元运算与lambda表达式
[是什么] 三元运算是if...else...的简化版,lambda表达式是函数的简化版 三元运算(三目运算) # 判断两个数中的较大者 fun(a1,a2): return a1 if a1> ...
- python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理
python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...
- Python之路第三天,基础(3)-set,函数,内置函数,文件,三元运算,lambda
set集合 集合是一个无序的,不重复的元素集合. 集合的创建: name_set = {'tom','jerry','alex','rose'} 或 name_set = set(['tom','je ...
- Python基础-Python的三元运算符和lambda表达式
1. Python的三元表达式: 现在大部分高级语言都支持 “?”这个三元运算符,它对应的表达式如下:condition ? value if true:value if else 但是 Python ...
- python内置函数,lambda表达式,文件读写
Lambda表达式: lambda是个匿名函数,自动加return返回 a={ 6:2,8:0, 1:4,-5:6,99:11,4:22} print(sorted(a.items()))#按key排 ...
- **三元运算和lambda
三元运算 在说三元运算之前,我们看一段代码: a = 1 if a == 1: name = 'Hello' else: name = 'World' print(name) 输出:Hello 对于这 ...
- python 三元运算、列表推倒式、字典推倒式、生成器生成式
1.三元运算 name=input('姓名>>: ') res='SB' if name == 'alex' else 'NB' print(res) 2.列表推倒式 #1.示例 egg_ ...
随机推荐
- laravel发送邮件
这里已163为例: 1..env文件配置和mail.php配置(默认使用.env) MAIL_DRIVER=smtp MAIL_HOST=smtp.163.com MAIL_PORT=465 MAIL ...
- Ubuntu語言支持爲灰色修復方法
Ubuntu語言支持爲灰色修復方法 在Ubuntu12.04中,在下不知爲何將 語言支持 中 應用到整個系統 和 添加語言 這2個按弄成了灰色,導致ibus不能輸入中文,現在唔將修復方法公告天下: 1 ...
- postman安装Postman Interceptor 插件
做后端开发避免不了进行接口调试,但是一般的项目都是前后端分离的,如果把前端代码下到本地,较为费事,这个时候就需要一个可以进行接口调试的工具.Postman就是一个不错的选择. Postman是什么? ...
- 【sqlite】错误代码整理
这两天为了一个问题折腾了好久,记载一下. SQLite语句一定要严格按例子来写,例如: "CREATE TABLE PunchData (Id Text primary key, Heigh ...
- 【java规则引擎】drools6.5.0中kie的概论
什么是KIE? KIE是jBoss里面一些相关项目的统称,下图就是KIE代表的一些项目,其中我们比较熟悉的就有jBPM和Drools. 这些项目都有一定的关联关系,并且存在一些通用的API,比如说涉及 ...
- openfaas k8s 集成
备注 k8s 1.6 以下版本与k8s 1.6 以上版本会有一些简单的区别 1. 克隆k8s 部署文档 https://github.com/openfaas/faas-netes 2. 创 ...
- 十大Java人物
James Gosling : Java之父文/陶文 作 为Java之父,James Gosling的名字可谓是耳熟能详.当人们评论一种编程语言时,总喜欢捎带着把下蛋的母鸡一起带上.Java做为中国的 ...
- (转)android项目用到的公共类方法
/*** 直接下载图片并加载至控件(非异步加载)* * @param activity* @param urlpath* 图片下载路径* @param imageView* ...
- JMeter使用经历
JMeter是Apache大树下的又一个果实,是一个压力测试工具,因为使用方便又开源免费,也被用来做功能测试.项目里也是拿JMeter来做功能性的接口自动化测试.这里大概说明下怎么用. 首先还是先下载 ...
- Restore Nexus 5 to Stock and Flash Factory Images
1.This is the website to download Factory Images for Nexus Devices https://developers.google.com/and ...