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_ ...
随机推荐
- jquery 中多条件选择器,相对选择器,层次选择器的区别
一.Jquery常用的过滤选择器如下所示: 1.:first,选取第一个元素,比如$("div:first")选取第一个div元素 2.:last,选取最后一个元素,比如$(&qu ...
- MyEclipse Tern was unable to complete your request in time
1.错误描述 2.错误原因 由错误提示可知,是由于MyEclipse Tern不能及时完成回复 3.解决办法 (1)Window--->Preferences--->MyEclipse-- ...
- Leetcode 986. Interval List Intersections
暴搜.. class Solution(object): def intervalIntersection(self, A: List[Interval], B: List[Interval]) -& ...
- 6.etc目录下重要文件和目录详解
1./etc/下的重要的配置文件 /etc(二进制软件包的 yum /rpm 安装的软件和所有系统管理所需要的配置文件和子目录.还有安装的服务的启动命令也放置在此处) /etc/sysconfig/n ...
- "==" 与 "is"的区别
Is there a difference between `==` and `is` in Python? "=="是比较内容相当;"is"是比较对象的id是 ...
- 接口测试基础——第2篇smtplib发送带附件的邮件
我先给大家补充一个用QQ发送纯文本电子邮件的代码,用QQ的朋友可以参考一下: # coding=utf-8 import smtplib from email.mime.text import MIM ...
- 《C#求职宝典》读书笔记
王小科 电子工业出版 第一篇 面试求职第一步 一个例子:一支行军中的队伍长100米,一个传令兵从队尾跑至队头,再立即返回队尾,队伍正好前进了100米.假设队伍 和传令兵行进的速度恒定,问传令兵跑了多少 ...
- 关于bonecp和QuerRunner
之前一直以为boneCP和QueryRunner是绑定的,但是其实不是,后者来自于commons-dbUtils,BoneCP就是负责连接池. while preparing SQL: UPSERT ...
- Windows下安装Object C开发环境,及Hello Word(转)
Windows下安装Object C开发环境,及Hello Word 最近想学习iphone开发,但是由于没有c基础,只有java基础.所以先从基础学习,首先是搭建环境,目前手头没有mac机子,只能先 ...
- Swift app中的Crash捕获与处理
1. 为什么会Crash 常见的Crash原因有:访问已经被释放的内存,数组越界,使用!解包值为nil的变量.当遇到这些情况时,说明应用已经遇到了很严重的非预期错误,无法再继续运行.操作系统检测到这些 ...