Python 中是否存在与 C 语言中的“?:”三元运算符等效的运算符?
是的,我们也可以用 Python 来替代 C 中的三元运算符。举例来说,看一下下面 C 语言中三元运算符的例子:
示例
#include <stdio.h> int main() { int x = 10; int y; y = (x == 1) ? 20: 30; printf( "Value of y = %d\n", y ); y = (x == 10) ? 20: 30; printf( "Value of y = %d\n", y ); }
输出
Value of y = 30 Value of y = 20
Python 中有许多运算符:算数运算符、赋值运算符、逻辑运算符、按位运算符、成员运算符和恒等运算符等。C 语言中三元运算符执行的任务也可以使用逻辑运算符来实现。
在 Python 2.5 之前,程序员使用以下逻辑运算符语法来执行相同的工作。但这种方法不正确,并且当 `on_safe` 为布尔假时会出错:
[expression] and [on_true] or [on_false]
因此,Python 2.5 之后引入了以下形式的三元运算符,以便简化程序员的工作。
语法
语法如下:
[on_true] if [expression] else [on_false]
示例
现在让我们看一个在 Python 中实现三元运算符的示例:
x = 20 y = 10 res = x if x < y else y print(res)
输出
10
示例
示例:
x = 50 y = 10 res = x if x > y else y print(res)
输出
50
广告