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

Python でリストのリストから要素のすべての組み合わせを生成するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-02 16:54:11
オリジナル
313 人が閲覧しました

How can I generate all combinations of elements from a list of lists in Python?

リストのリストのすべての組み合わせの生成

ネストされたデータ構造を扱う場合、それらを効率的に操作することが不可欠になります。一般的なタスクの 1 つは、複数のリストから要素の可能な組み合わせをすべて取得することです。

Python 開発者にとって、 itertools.product 関数は、この問題に対する簡潔で洗練された解決策を提供します。複数の反復可能オブジェクトを引数として受け取り、各反復可能オブジェクトから要素の可能なすべての組み合わせを表すタプルを生成します。

答え:

リストのリスト内の要素のすべての組み合わせを生成するには、次のように itertools.product を使用します:

import itertools

my_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9, 10]]

result = list(itertools.product(*my_list))
ログイン後にコピー

これにより、次のリストが生成されます。タプル。それぞれが入力リストの要素の一意の組み合わせを表します。

出力例:

[(1, 4, 7), (1, 4, 8), (1, 4, 9), (1, 4, 10), (1, 5, 7), (1, 5, 8), (1, 5, 9), (1, 5, 10),
(1, 6, 7), (1, 6, 8), (1, 6, 9), (1, 6, 10), (2, 4, 7), (2, 4, 8), (2, 4, 9), (2, 4, 10),
(2, 5, 7), (2, 5, 8), (2, 5, 9), (2, 5, 10), (2, 6, 7), (2, 6, 8), (2, 6, 9), (2, 6, 10),
(3, 4, 7), (3, 4, 8), (3, 4, 9), (3, 4, 10), (3, 5, 7), (3, 5, 8), (3, 5, 9), (3, 5, 10),
(3, 6, 7), (3, 6, 8), (3, 6, 9), (3, 6, 10)]
ログイン後にコピー

itertools.product を使用すると、便利で効率的に生成できます。 Python の複雑なデータ構造からの要素の可能なすべての組み合わせ。

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

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