Python 实现三目运算符[三元表达式]

一. 什么是三目运算符

Java、C、php等语言,都有非常好用的三目运算符(三元表达式),一般用法都是:

判定条件?为真时的结果:为假时的结果
x = x%2==1 ? x+1:x;

二. Python实现

Python也可以使用一些技巧来实现类似运算符:

condition = 2 > 1
sectionTrue = True
sectionFalse = False

# 方法1:比较笨的实现
if condition:
rs = sectionTrue
else:
rs = sectionFalse
print(rs) # 返回True

# 方法2:
# 为真时 if 判定条件 else 为假时的结果
rs = sectionTrue if condition else sectionFalse
print(rs) # 返回True

#方法3:
# 判定条件 and 为真时的结果 or 为假时的结果
rs = condition and sectionTrue or sectionFalse
print(rs) # 返回True

三. 使用 np.where实现

# np.where(判断条件,为真时的结果,为假时的结果)
x = np.where(x % 2 == 1, x + 1, x)

Python 运算符基础教程

Python逻辑运算符and、or和not用法详解

Python转义字符详解(\r,\t,\n)