您现在的位置是:亿华云 > 数据库
Python之三元表达式嵌套三元表达式解析
亿华云2025-10-08 23:05:22【数据库】0人已围观
简介Python的三元表达式相信学过python的朋友都会。但是大部分学python的朋友不知道的是三元表达式还可以嵌套三元表达式。请看代码案例:cmp=lambdaa,b:0ifa==belse1ifa
Python的表达表达三元表达式相信学过python的朋友都会。但是式嵌式解大部分学python的朋友不知道的是三元表达式还可以嵌套三元表达式。
请看代码案例:
cmp = lambda a,套元 b: 0 if a == b else 1 if a > b else -1 print(cmp(3,2)) print(cmp(2,3)) print(cmp(2,2)) out:1 -1 0以上代码的功能是对两个数进行比较,若第一个数等于第二个数返回0;若第一个数大于第二个数返回1;若第一个数小于第二个数返回-1。表达表达
直接看是式嵌式解不是比较懵?我把它拆分一下,换一种写法,套元会容易懂得多。表达表达
def cmp2(a,式嵌式解 b): if a == b: return 0 else: if a > b: return 1 else: return -1 print(cmp2(3, 2)) print(cmp2(2, 3)) print(cmp2(2, 2)) out:1 -1 0可以看到上述2个函数功能完全一致,源码库第一种写法简洁的套元多!
再来熟悉一下这种写法,为了便于理解我多加了对括号:
0 if a == b else (1 if a > b else -1)这种语句是表达表达三元表达式嵌套三元表达式的结构,从左向右计算。式嵌式解
三元表达式首先找if,套元找到if判断a ==b (判断元素):
若该条件满足则返回if左边的表达表达0(结果元素1)作为整个表达式的运算结果。 若该判断条件不满足则返回判断条件右边的式嵌式解三元表达式(结果元素2)。右边仍然是套元三元表达式,继续计算该三元表达式,找到if判断a>b(判断元素):
若该条件满足则返回if左边的1(结果元素1)作为整个表达式的b2b供应网运算结果。 若该判断条件不满足则返回判断条件右边的-1(结果元素2)作为整个表达式的运算结果。python的三元表达式非常灵活,从上述案例中可以学习到三元表达式的结果元素可以是三元表达式,也就是说三元表达式可以嵌套三元表达式使用。
三元表达式嵌套三元表达式的结构并不难懂,熟练掌握以后会让你的代码更简洁,用三元表达式嵌套三元表达式感觉比用if else if else瞬间高大上了很多,嘻嘻。亿华云
很赞哦!(1)