📅  最后修改于: 2020-01-13 17:41:39             🧑  作者: Mango
三元运算符也称为条件表达式,是根据条件为true或false评估某些内容的运算符。它是在2.5版中添加到Python中的。
它仅允许在单行中测试条件,从而替换多行if-else,从而使代码紧凑。
语法 :三元运算符也称为条件表达式,是根据条件为true或false评估某些内容的运算符。它是在2.5版中添加到Python中的。
它仅允许在单行中测试条件,从而替换多行if-else,从而使代码紧凑。
[Best_Wordpress_Gallery id=”1″ gal_title=”All images”]
语法 :
[on_true] if [expression] else [on_false]
# Program程序展示使用三元运算符
a, b = 10, 20
# 如果a < b ,把a的值复制到min,否则赋值b到min
min = a if a < b else b
print(min)
输出:
10
# Python 程序展示使用三元运算符
a, b = 10, 20
# 使用tuple进行选择
print( (b, a) [a < b] )
# 使用字典进行选择
print({True: a, False: b} [a < b])
# lamda运算会更加高效灵活
print((lambda: b, lambda: a)[a < b]())
输出:
10
10
10
# Python展示嵌套三元运算符
a, b = 10, 20
print ("a=b" if a == b else "a大于b"
if a > b else "b大于a")
上面的方法可以写成:
# Python展示嵌套三元运算符
a, b = 10, 20
if a != b:
if a > b:
print("a大于b")
else:
print("b大于a")
else:
print("a等于b")
输出:
b大于a
重要事项:
在不存在三元运算符的情况下,
在2.5之前使用的方法在类似于以下给出的表达式中,解释器将检查该表达式是否为true,然后评估on_true,否则评估on_false。
语法 :
'''当条件是True, 表达式:[on_false]
不会执行并且"True and [on_true]"
会被返回. else:内容哦 "False or [on_false]"
被返回.
注意: "True and x" 等效于 x.
"False or x" 等效于 x. '''
[expression] and [on_true] or [on_false]
范例:
# Python代码,展示如何使用运算符
a, b = 10, 20
# 若a小于 b, 则a被赋值
# 否则b被赋值 (注意 : 若a=0,程序不工作)
min = a < b and a or b
print(min)
输出:
10