ホームページ > バックエンド開発 > Python チュートリアル > あるリストの項目が別のリストに存在するかどうかを確認するより効率的な方法はありますか?

あるリストの項目が別のリストに存在するかどうかを確認するより効率的な方法はありますか?

Mary-Kate Olsen
リリース: 2024-11-21 07:58:09
オリジナル
814 人が閲覧しました

Is there a More Efficient Way to Check if Any Item From One List Exists in Another List?

リスト検証に複数の項目を組み込む

最初の質問は、指定されたリストの項目が存在するかどうかを確認する効率的な方法を見つけることを中心に展開します。別のリスト内で。この記事では、カスタム関数を使用するのではなく、このシナリオに対処するための代替アプローチを検討します。

アプローチ 1: リスト内包

以下に例示するように、リスト内包を使用できます。 2 番目のリストに存在する最初のリストの項目を分離するには:

L1 = [2, 3, 4]
L2 = [1, 2]
[i for i in L1 if i in L2]
ログイン後にコピー

この方法では、要素が含まれている場合はブール値 True を持つ、一致する項目のリストが生成されます。指定された例では、[2] が返されます。

アプローチ 2: 交差の設定

あるいは、より効率的なリスト比較のためにセットを使用することもできます。各リストをセットに変換すると、それらの共通部分は次のように見つけることができます。

S1 = set(L1)
S2 = set(L2)
S1.intersection(S2)
ログイン後にコピー

リスト内包と同様に、2 つのセットの共通部分には一致する要素のみが含まれます。空集合は False と評価されるため、交差の結果を真理値として直接使用できます。

論理評価の考慮事項

いずれのアプローチでも、一致する項目があれば True を返すのに十分です。したがって、この方法は、すべての項目が存在する必要があるシナリオには適していない可能性があります。

以上があるリストの項目が別のリストに存在するかどうかを確認するより効率的な方法はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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