Python 是否有等价于C语言的“?:”三元运算符

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为false时会失败。

[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

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程