ホームページ >バックエンド開発 >Python チュートリアル >Python の「any」関数と「all」関数はリスト内包表記でどのように機能しますか?また、これが「[False, False, False]」を返すのはなぜですか?
Python の any および all 関数を理解する
Python の any および all は、反復可能を評価し、それに基づいてブール値を返す組み込み関数です。彼らの真実性elements.
any
any は、イテラブル内の少なくとも 1 つの要素が True (または数値の場合は 0 以外) の場合に True を返します。 True 値が見つかるか、すべての要素が使い果たされるまで反復可能を評価します。
all
all は、反復可能内のすべての要素が True の場合にのみ True を返します。 iterable が空の場合、すべてが True を返します。 False 値が見つかるか、すべての要素が検査されるまで、反復可能オブジェクトの評価が続けられます。
真実性
真実性を理解することは、あらゆるものがどのように機能するかを理解するために重要です。 Python では、値がゼロ、空の文字列、または None (Null) でない場合、値は True とみなされます。 False 値には、0、空のコンテナ、False 自体が含まれます。
コード
コードでは、リスト内包表記を使用しています:
[any(x) and not all(x) for x in zip(*d['Drd2'])]
この式を理解するために、分解してみましょうdown:
理由False が返されます
コードは、タプルのリスト内の各タプルについて、少なくとも 1 つの値が True であるかどうかをチェックし、同時にすべての値が True であるわけではないため、[False、False、False] を返します。 d['Drd2'] 内のタプルには同一の要素があるため、すべてのタプルで all(x) が True になり、all(x) が False にはなりません。その結果、式全体は any(x) になり、各タプルの not all(x) が False と評価されます。
以上がPython の「any」関数と「all」関数はリスト内包表記でどのように機能しますか?また、これが「[False, False, False]」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。