ホームページ > バックエンド開発 > Python チュートリアル > Python でリスト間の集合差を効率的に計算するにはどうすればよいですか?

Python でリスト間の集合差を効率的に計算するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-13 07:46:13
オリジナル
773 人が閲覧しました

How to Efficiently Calculate Set Difference Between Lists in Python?

Python 構造を使用したリストの差の設定

リストを操作する場合、多くの場合、あるリストから別のリストを減算するなどの操作を実行する必要があります。 。 Python では、この操作は集合差分として知られており、一方のリストのもう一方のリストにも存在するすべての要素を削除することが含まれます。

ループを使用して集合差分を実行する単純なアプローチは、線形であるため非効率的です。時間の複雑さ。ただし、Python には、このタスクを達成するためのより効率的で慣用的な方法が用意されています。

Python のソリューション: リスト内包

Python のリスト内包構文を使用すると、簡潔で効率的なリスト操作タスクが可能になります。次のコード スニペットは、リスト内包表記を使用して集合差分を実行する方法を示しています。

l1 = [1, 2, 6, 8]
l2 = [2, 3, 5, 8]
l3 = [x for x in l1 if x not in l2]
print(l3)  # Output: [1, 6]
ログイン後にコピー

このコードでは、リスト内包表記 [x for x in l1 if x not in l2] が l1 の各要素を反復処理します。各要素 x について、式 x not in l2 は、x が l2 に存在しないかどうかをチェックします。 true の場合、x が結果のリスト l3 に追加されます。その結果、l3 には、l2 には存在しない l1 の要素が含まれます。

以上がPython でリスト間の集合差を効率的に計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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