ホームページ  >  記事  >  バックエンド開発  >  Python の `all()` と `any()` はリスト要素の一貫性を効率的にチェックするにはどうすればよいでしょうか?

Python の `all()` と `any()` はリスト要素の一貫性を効率的にチェックするにはどうすればよいでしょうか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-25 02:38:28921ブラウズ

How Can Python's `all()` and `any()` Efficiently Check for List Element Consistency?

all() を使用したリスト要素の一貫性のチェック

リスト内のすべての要素が特定の条件を満たすかどうかを判断するには、Python の組み込み関数を使用します。 all() は効率的なソリューションを提供します。 3 つの要素を持つサブリストで構成され、最後の要素がフラグを表すリストを考えてみましょう。

my_list = [['a', 'b', 0], ['c', 'd', 0], ['e', 'f', 0], ...]

伝統的に、while ループを使用して、サブリストのフラグが 0 に設定されているかどうかを確認できます。 :

def check(list_):
    for item in list_:
        if item[2] == 0:
            return True
    return False

ただし、このアプローチは非効率的で、エラーが発生しやすい可能性があります。プロセスを簡略化して高速化するには、all() が役に立ちます。

all(item[2] == 0 for item in my_list)

リスト内のすべての要素のフラグが 0 である場合、式は True と評価されます。逆に、サブ要素があれば False を返します。リストにゼロ以外のフラグがあります。

コンセプトの拡張

代わりにフラグが 0 であるかどうかをチェックするため、少なくとも 1 つの要素にゼロ フラグがあることを確認したいため、any() を使用できます。

any(item[2] == 0 for item in my_list)

この式は、少なくとも 1 つのサブリストのフラグが に設定されている場合に True と評価されます。 0.

結論

all() と any() を使用してリスト要素をチェックする一貫性によりコードが合理化され、パフォーマンスが向上します。これにより、可読性が向上し、明示的な反復の必要性がなくなり、目的の条件の信頼できる評価が保証されます。

以上がPython の `all()` と `any()` はリスト要素の一貫性を効率的にチェックするにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。