Python 三元运算符

Python 三元运算符语法

如果小伙伴们熟悉 C/C++ 或者 Java,那么你很难忽略的一个事实就是:Python 在很长一段时间里都没有三元运算符(也叫做 “三目运算符” 或 “条件表达式”),也就是 C ? X : Y 这样的语法(C 是条件表达式,X 是条件为 True 时的结果,Y 是条件为 False 时的结果)。

直到后来,Python 创建者 “龟叔” Guido van Rossum 才选择了一个最被看好也是他最喜欢的方案,把它运用于标准库中,最终其语法确定为:X if C else Y

语法:

X if C else Y

说明:

三元运算符其实是很简单的,也就是 “二选一”。比如你有两个喜欢的妹子,但只能选择一个人做你的老婆。

实际上,三元运算符 result = X if C else Y是下面 if...else 语句的精简版:

if C:
    result = X
else:
    result = Y

注意: 三元运算符可以提高代码的可读性,但过度使用可能会降低代码的可维护性。

Python 三元运算符示例

接下来,我们通过几个简单的例子来讲解 Python 三元运算符是如何使用的。

示例 1:三元运算符的基本用法

result = 'Lucy' if 2 > 1 else 'Lily'
print(result)

运行结果如下。

Lucy

分析:

由于条件 “2 > 1” 返回 True,所以最终选择的是 'Lucy'。可能初学的小伙伴一开始会觉得 Python 的条件表达式很奇怪,其实它是很好理解和记忆的。我们只需要把条件表达式拆分为 3 部分即可:中间是条件,左边放的是条件为 True 时的结果,右边放的是条件为 False 时的结果,如下图所示。

Python 三元运算符

示例 2:三元运算符求两个数字之差

a = int(input('请输入第1个整数:'))
b = int(input('请输入第2个整数:'))
result = b - a if a < b else a - b
print(result)

运行之后,输入 “5” 和 “12”,其结果如下:

7

上一篇: Python if 语句

下一篇: Python while 循环

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号