ホームページ > バックエンド開発 > Python チュートリアル > Python でリストから長さ n のすべての組み合わせを効率的に生成するにはどうすればよいですか?

Python でリストから長さ n のすべての組み合わせを効率的に生成するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-19 16:24:02
オリジナル
765 人が閲覧しました

How to Efficiently Generate All Combinations of Length n from a List in Python?

長さ n のすべての (n-choose-k) 組み合わせを取得する

数値のリストを操作する場合、次のことが必要になる場合があります。そのリストから指定された長さ n のすべての組み合わせを生成します。これは、Python の itertools モジュールを使用すると効率的に実現できます。

これらの組み合わせを取得するには、 itertools.combinations() 関数を使用します。この関数は、入力リストと必要な長さ n の 2 つの引数を取ります。これは、長さ n のすべての可能な組み合わせを順番に生成する反復子を返します。

たとえば、リスト [1, 2, 3, 4] と長さ n = 3 について考えてみましょう。 itertools.combinations() を使用すると、次の組み合わせを取得できます:

import itertools

for comb in itertools.combinations([1, 2, 3, 4], 3):
    print(comb)
ログイン後にコピー

出力:

(1, 2, 3)
(1, 2, 4)
(1, 3, 4)
(2, 3, 4)
ログイン後にコピー

Thisこのアプローチは効率的かつ実装が簡単で、数値のリストから指定された長さの組み合わせを生成するための実用的なソリューションとなります。

以上がPython でリストから長さ n のすべての組み合わせを効率的に生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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