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

Python で文字列のリスト内の部分文字列を効率的に見つけるにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-10 01:44:09817ブラウズ

How Can I Efficiently Find Substrings Within a List of Strings in Python?

文字列リスト内の部分文字列の検出

'abc' などの特定の文字列が、文字列の個々の要素内に出現するかどうかを判断するリストはプログラミングにおける一般的なタスクです。 Python では、これは、文字列内の部分文字列と一致する「in」演算子を使用して実現できます。ただし、このアプローチでは常に望ましい結果が得られるとは限りません。

次の文字列リストを考えてみましょう:

xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']

次の式:

if 'abc' in xs:

は False を返します。これは、「in」は完全一致をチェックし、「abc」はリスト内のどの項目とも完全に一致しないためです。

この制限を克服するには、Python の any 関数と in 関数を利用して ' abc' はリスト内の任意の文字列に表示されます:

if any("abc" in s for s in xs):
    # ...

'abc' は次の部分文字列であるため、この式は True を返します。 'abc-123' と 'abc-456'。

さらに、リスト内包表記を使用して 'abc' を含むすべての項目のリストを取得できます。

matching = [s for s in xs if "abc" in s]

これにより、次のものが生成されます。要素「abc-123」を含むリストと'abc-456'.

これらの手法を使用すると、開発者は文字列のリスト内の部分文字列を効果的に検索して見つけることができ、より包括的で正確なデータ処理が可能になります。

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

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