Python能夠經過if'語句來實現三目運算符的功能,所以能夠把這種if語句當作三目運算符,具體語法格式以下:python
返回True執行 if 表達式 else 返回False執行函數
例:blog
a = "返回True執行" if 3 > 4 else "返回False執行" print (a)
運行結果:class
返回False執行
實際上,若是隻是爲了在控制檯輸出信息,能夠修改以下:語法
print("返回True執行") if 3 > 4 else print("返回False執行") # 運行結果:返回False執行
在Python的三目運算符中,容許在"返回True執行"和"返回Flase執行"中放置多條語句,有如下兩種方式:程序
- 使用英文逗號隔開,每條放置的語句都會執行,程序返回多條語句的返回值組成的元組。
例:英文
b = 3 + 1, "3 > 2",print('AAA') if 1 > 2 else print("BBB"),2 + 2 print (b)
上面的例子中,由於 1 > 2 是False,因此執行並返回3 + 1,"3 > 2",2 + 2,print("BBB")這四條語句,因爲print()函數沒有返回值,故返回None,運行結果以下:di
BBB (4, '3 > 2', None, 4)
- 使用英文分號隔開,每條語句都會執行,但程序只會返回第一條語句的返回值。
例:運算符
b = 1 + 1; "3 > 2";print('AAA') if 1 > 2 else print("BBB");2 + 2 print (b)
這裏的if...else...執行print("BBB"),返回的是第一條語句1 + 1的返回值2,因此,運行結果以下:
BBB 2
咱們能夠經過嵌套三目運算符,執行更加複雜的判斷。
例:
x = 3 y = 5 print("x = y") if x == y else print("x > y") if x > y else print("x < y")
上面的例子先對x == y求值,若是返回True,則執行並返回表達式print("x = y"),不然執行嵌套的三目運算符表達式print("x > y") if x > y else print("x < y"),此時對x > y求值,若是返回True,則執行並返回表達式print("x > y"),不然執行並返回print("x < y"),運行結果:
x < y