Python で `(1 in [1,0] == True)` が `False` と評価されるのはなぜですか?

Patricia Arquette
リリース: 2024-11-01 04:23:02
オリジナル
953 人が閲覧しました

Why does `(1 in [1,0] == True)` evaluate to `False` in Python?

(1 in [1,0] == True) の False 評価

一般的なプログラミング言語とは異なり、Python は比較を使用して式を評価します演算子の連鎖。式 (1 in [1,0] == True) では、操作は期待どおりに解析されません。

式は実際には次のように解釈されます:

(1 in [1, 0]) and ([1, 0] == True)
ログイン後にコピー

この評価は失敗します。 into:

  • (1 in [1, 0]): リスト [1, 0] に 1 が存在するため、これは True と評価されます。
  • ([1, 0] == True): [1, 0] はブール値ではなくリストであるため、これは False と評価されます。

式全体は、したがって、次のように評価されます:

True and False = False
ログイン後にコピー

この予期しない結果は、他の言語と比較した Python の式の評価の違いを強調しています。混乱を避けるために、かっこを使用して目的の評価順序を指定します:

(1 in [1,0]) == True # True
ログイン後にコピー

以上がPython で `(1 in [1,0] == True)` が `False` と評価されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!