部分文字列に基づいてリスト内の文字列をフィルタリングする
文字列のリストが与えられた場合、それをフィルタリングして、特定の部分文字列?たとえば、リスト ['a', 'ab', 'abc', 'bac'] がある場合、リスト ['ab', 'abc'] を取得する必要があります。
リスト内包表記を使用した解決策
効率的な方法の 1 つは、Python のリスト内包表記を使用することです。
<code class="python">lst = ['a', 'ab', 'abc', 'bac'] result = [k for k in lst if 'ab' in k]</code>
リスト内包表記は、lst 内の各文字列 k を反復処理し、部分文字列 'ab 』がその中に存在します。 true の場合、k が結果リストに追加されます。
フィルターを使用した代替アプローチ
または、フィルター関数を使用して同じ結果を得ることができます。
<code class="python">lst = ['a', 'ab', 'abc', 'bac'] result = list(filter(lambda k: 'ab' in k, lst))</code>
ここで、フィルター関数は各文字列に 'ab' が存在するかどうかをチェックするラムダ関数を受け取ります。結果の反復子は、list を使用してリストに変換されます。
結論
リスト内包表記とフィルター関数はどちらも、特定の条件に基づいて文字列のリストをフィルター処理する効果的な手段を提供します。コンテンツ。 2 つの方法のどちらを選択するかは、個人の好みとコードの読みやすさによって決まります。
以上が部分文字列に基づいてリスト内の文字列をフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。