【Python面試真題】-解釋一下python的and-or語法??
【Python面試真題】-解釋一下Python的and-or語法?
與C表達(dá)式 bool ? a : b類似,但是bool and a or b,當(dāng) a 為假時,不會象C表達(dá)式 bool ? a : b 一樣工作
應(yīng)該將 and-or 技巧封裝成一個函數(shù):
def choose(bool, a, b): return (bool and [a] or [b])[0]
因為 [a] 是一個非空列表,它永遠(yuǎn)不會為假。甚至 a 是 0 或 '' 或其它假值,列表[a]為真,因為它有一個元素。