ホームページ > バックエンド開発 > Python チュートリアル > Python の文字列リストで部分文字列の存在と取得を効率的に確認するにはどうすればよいですか?

Python の文字列リストで部分文字列の存在と取得を効率的に確認するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-20 13:14:14
オリジナル
432 人が閲覧しました

How Can I Efficiently Check for Substring Presence and Retrieval in a Python List of Strings?

文字列のリスト内の部分文字列の存在を確認する

文字列のリスト内で部分文字列の出現を識別することを目的とすると、制限が発生します。単純な部分文字列チェックでは不十分です。提供された例に示されているように、リスト内で 'abc' を検索します:

xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
ログイン後にコピー

xs で式 'abc' を使用すると、'abc-123' や 'abc-456' などの項目をキャプチャできません。部分文字列 'abc' が含まれています。

解決策: リストの活用内包

このハードルを克服するために、リスト内包は強力な解決策を提供します。 any 関数を使用すると、リストの任意の項目内の部分文字列の存在を迅速に判断できます。次のコード スニペットは、これを効果的に実現します。

if any("abc" in s for s in xs):
    # Perform desired actions
ログイン後にコピー

この場合、for 句はリスト xs 内の各文字列 s を反復処理し、「abc」が部分文字列として存在するかどうかをチェックします。いずれかの文字列がこの条件を満たす場合、any 関数は True を返します。

一致するすべての部分文字列の取得

目的は、指定された部分文字列、リスト内包を含むすべての文字列を抽出することである必要があります。再び便利なソリューションを提供します。次のコード スニペットは、この要件を満たします。

matching = [s for s in xs if "abc" in s]
ログイン後にコピー

ここで、for 句は、'abc' の存在に対して True を返す各文字列を選択し、それを一致リストに格納します。このアプローチにより、必要なすべての項目が新しいリストに効率的に収集されます。

リスト理解の機能を活用することで、文字列のリスト内の部分文字列の出現を識別するという課題に効果的に対処し、より包括的で正確な部分文字列検索を可能にします。

以上がPython の文字列リストで部分文字列の存在と取得を効率的に確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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