三目运算符是大多数编程语言的 if else 的简写替代方式。它可以让条件判断在一行完成,这样让代码看起来更加的美观。

其它编程语言的语法如下:

contion ? exp1 : exp2

什么意思呢?condition是一个布尔运算,程序先判断condition的返回值是True或者False,如果为True执行表达式1,否则执行表达式2。

Python也不例外,也是支持三目运算符的。不过它却是通过if else 在一行内完成的。

Pyhton的三目语法如下:

exp1 if contion else exp2

Python使用了if else 的方式在一行完成条件判断。

它和上面的语法解释是一样的,condition是一个布尔运算,程序先判断condition的返回值是True或者False,如果为True执行表达式1(exp1),否则执行表达式2(exp2)。

借助下面的例子了解Python的三目运算符。

#!/usr/bin/python
# coding=utf-8
a=2
b=3
print("a大于b") if a>b else print("a小于b")
程序运行结果:
a小于b

 三目运算符嵌套

我们可以使用嵌套的方式求出三个数的最大值,看下面的例子。

 #!/usr/bin/python
# coding=utf-8
a=2
b=3
c=4

max = a if a > b and a>c else b if b>c else c
print("最大的值:", max)
程序运行结果:
最大的值: 4

注意:虽然上面的例子能完成我们的需求,但是不建议使用Python三目运算符嵌套的方式,因为可读性不友好。