-2

あなたがこれを見れば:-

>>>a = "hello"
>>>b = "world"
>>>print a and b 
world
>>>print b and a
hello

この:-

>>>a = "hello"
>>>b = "world"
>>>print a or b 
hello
>>>print b or a
world

どちらもほぼ同じです。では、それらはどのように違うのでしょうか?

4

1 に答える 1

3

および演算子が短絡しorます。結果が与えられたとき、彼らは早く戻ります。and

orつまり、最初の式がである場合True、2番目の式を見る意味はありません。それは問題ではないからです。

>>> 'a' or 'b'
'a'
>>> False or 'b'
'b'

同じことが、にも当てはまりますが、最初の値が;とand評価された場合のみです。Falseその場合、式は常にFalse2番目の式が到達するものに評価されます。

>>> False and 'b'
False
>>> 'a' and 'b'
'b'

ブール式を参照してください:

x and yは最初に評価しxます; falseの場合x、その値が返されます。それ以外の場合yは評価され、結果の値が返されます。

x or yは最初に評価しxます; trueの場合x、その値が返されます。それ以外の場合yは評価され、結果の値が返されます。

于 2013-03-25T17:52:13.487 に答える