我们用一个案例解释python的判断语句:
if a > b :
return a
else:
return b
案例:
a = 2
b = 3
if a > b:
max = a
else:
max = b
这样利用python语言,写一个if 判断没有问题吧
三目运算符
下面我们用三目运算符来完成这样一种操作
a = 2
b = 3
max1 = a if a > b else b
其中 a > b 是判断条件 a b 分别是表达式如果 a > b 成立 返回 a 不成立(否则)返回 b:
if a > b :
return a
else:
if a < b:
return b
else:
return c
print(cmp(1,2,3))
我们现在用三元运算符嵌套来实现该方法
cmp = lambda a, b,c: a if a > b else b if a < b else c
print(cmp(1,2,3))
我们注重关注这一块,a if a > b else b if a < b else c
我们可以把它写成这样:
a if a > b else (b if a < b else c)
其中 a > b 和 a < b 都是判断条件, a ,b , c 是表达式,我们可以这样理解这段代码: 如果条件 a > b 就把 a 作为整个表达式返回的值,否则执行 (b if a < b else c) ,在这段代码中,先会去判断如果 a < b , 就把 b 作为整个表达式返回的值,如果不满足返回c的值。
三目运算符的优势是利用简短的代码实现了其他形式代码冗余的功能
为什么,我讲三目运算符(三元运算符)要用以 if判断语句来示例,因为三目运算符和if判断语句都是 python中用于条件判断的方式。
if 判断语句可以根据需要判断的条件添加多个if else 语句。
三目运算符,也可称为条件判断语句,而不过是简洁的条件判断表达式。
文章部分内容转载:
作者: 懂法的程序猿
Python三目运算符(三元运算符)用法详解 - 懂法的程序猿的文章 - 知乎
https://zhuanlan.zhihu.com/p/512635950
作者: dituicyqz
http://t.csdnimg.cn/wuOIA