三元表达式又叫三目运算符,Python没有如Java那样的三元表达式,不过有类似的使用方法来简化代码。
一、python三元表达式的三种方法:
1.1、结果 = 值1 if 条件 else 值2
如果条件成立,结果就取左边的值1,否则结果取右边的值2,如下面的大小判断代码
remark = "是" if status=="Y" else "否"
python中 if 多个条件用and、or表达关系
b = 100 if a > 5 and a< 10 else 0
多个if else条件写法
if a > 5:
b = 100
elif a == 5:
b = 10
else:
b = 0
可以简化为
b = 100 if a > 5 else 10 if a == 5 else 0
1.2、结果 = (值2, 值1)[条件]
注意:这种方式是条件不满足时的结果值放在元组的前面,条件满足时的结果值放在元组的后面。如下面的代码
#结果 = (值2, 值1)[条件]
print(("条件为假","条件为真")[2>1])
判断大小的函数改成如下形式:
#结果 = (值2, 值1)[条件]
#print(("条件为假","条件为真")[2>1])
def max(a,b):
return (b,a)[a>b]
print(max(5,10))
1.3、{条件值1:结果1, 条件值2:结果2}[判断]
注意这种方式将条件和结果放在一个字典里面,根据判断的结果对应的键取不同的值,比如上面的判断大小的函数,可写成如下形式:
#{条件值1:结果1, 条件值2:结果2}[判断]
def max(a,b):
return {True:a,False:b}[a>b]
print(max(5,10))