ホームページ > バックエンド開発 > Python チュートリアル > Python のイテラブル内で最初に一致する要素を見つけるにはどうすればよいですか?

Python のイテラブル内で最初に一致する要素を見つけるにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-10 17:24:11
オリジナル
739 人が閲覧しました

How to Find the First Matching Element in an Iterable in Python?

反復可能で最初に一致する要素の検索

特定の条件を満たす反復可能から最初の項目を取得するには、次の方法を実行できます。

Python 2.6 と Python 3

スローする必要がある人向けStopIteration の場合 (一致が見つからない場合):

next(x for x in the_iterable if x > 3)
ログイン後にコピー

デフォルト値を返したいシナリオ (例: None):

next((x for x in the_iterable if x > 3), default_value)
ログイン後にコピー

Python 2.5 以前

イテレータの .next() メソッドを使用できます。このメソッドは、イテレータがすぐに終了した場合 (つまり、反復可能な項目が条件を満たさない場合)、すぐに発生します。反復を停止します。この状況を気にしない場合 (たとえば、条件を満たす項目が少なくとも 1 つ確実に存在することがわかっている場合)、 .next() を直接使用できます。

本当に気になる場合は、itertools、for...: ブレーク ループ、または genexp を使用して関数を実装できます。ただし、これらの代替案は大きな付加価値を提供しないため、最初に提案したより単純なバージョンを使用することをお勧めします:

def first(the_iterable, condition = lambda x: True):
    for i in the_iterable:
        if condition(i):
            return i
ログイン後にコピー

以上がPython のイテラブル内で最初に一致する要素を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート