Python中三元表达式的⼏种写法介绍
要介绍Python的三元表达式,可以先看看其他编程语⾔⽐如C,JAVA中应⽤:
public class java {
public static void main(String[] args){ int x = 100; int y = 101;
int MAX = (x > y)? x: y;
System.out.println(\"MAX:\" + MAX); }}
上⾯的例⼦可以很好的说明了其他语⾔的格式:
判段的条件 ? 条件为真时的结果:条件为假时的结果
⽽在Python中尽管也有三元表达式,但格式不同,先看下在Python中简单⽰例
>>> x = 4
>>> y = 99 if x > 3 else 999>>> y99
从上⾯的Python是⽰例可以看出,Python的三元表达式格式如下:
条件为真时的结果 if 判段的条件 else 条件为假时的结果
适⽤场景:变量赋值时,要做条件判断时,简化代码时使⽤。上⾯就是⼀个⽰例。 先定义变量:
a = 1b = 2
第⼀种写法:
erroStr = \"More\" if a > b else \"Less\"print(erroStr) # 运⾏结果为:Less
第⼆种写法:
print({True: \"More\运⾏结果为:Less
第三种写法:
print((\"FalseValue\运⾏结果为:FalseValue
其中我们⽐较常见的是第⼀种。
第⼆三种是挺简洁的,但是写在项⽬⾥怕是接⼿的同事要抓狂了。其他⽰例:
>>> def Max(x, y):
... return x if x > y else y>>> Max(99, 98)99
>>> Max(78, 88)88
>>> L = []>>> x = 2
>>> L.append(100 if x > 1 else 0)>>> L[100]
>>> def fib(n):
... return 1 if n == 1 else fib(n-1) + n>>> fib(1)1
>>> fib(5)15
>>> L = [-2, -4, 0, 2, 5, 8]
>>> list(filter(lambda x:True if x > 0 else False, L))
[2, 5, 8]
总结
以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作具有⼀定的参考学习价值,谢谢⼤家对的⽀持。如果你想了解更多相关内容请查看下⾯相关链接