是的,它是在2.5版中添加運算式語法為:
a if condition else b
第一condition被評估,則恰好中的任一個a或b進行評估并回傳基于所述布爾值condition,如果condition為True,a則被評估并回傳但b被忽略,否則b被評估為回傳但a被忽略,
這允許發生短路,因為condition僅當a評估為true時才進行評估,而b根本不評估,而當condition為false評估時,僅當b評估時a就完全不評估,
例如:
>>> 'true' if True else 'false'
'true'
>>> 'true' if False else 'false'
'false'
請注意,條件是運算式,而不是陳述句,這意味著您不能在條件運算式中使用賦值陳述句pass或其他陳述句:
>>> pass if False else x = 3
File "<stdin>", line 1
pass if False else x = 3
^
SyntaxError: invalid syntax
但是,您可以使用條件運算式來分配變數,如下所示:
x = a if True else b
本文首發于python黑洞網,博客園同步跟新
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/273981.html
標籤:其他
下一篇:多執行緒學習(下)
