1

私の知る限り :

andorはブール演算子であり、ブール式はブールを返す必要があります。

だから、なぜこれが起こるのですか:

  • False or 'name'戻る'name'のではなくTrue
  • True and ''戻る''のではなくFalse

Pythonはブール式をどのように処理するのか説明してください。

4

1 に答える 1

8

いいえ、Pythonでは、orandand操作が短絡し、最後に評価されたアイテムを返します。

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

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

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

ブール値が必要な場合は、次を使用しbool()ます。

>>> bool(False or 'name')
True
于 2012-10-30T10:30:12.627 に答える