ホームページ >バックエンド開発 >Python チュートリアル >以下に、形式と直接性の異なるいくつかのタイトルのオプションを示します。 フォーマル: * 異なる長さのリストのすべての一致する順列を生成する方法 * 異なる要素からの効率的なマッチング -
異なる長さのリストの順列の一致
プログラミングの領域では、長さが異なる 2 つのリストを扱うときに共通の課題が発生します。特定の組み合わせで要素を一致させようとします。
次のシナリオを考えてみましょう: 名前と数値という 2 つのリストが与えられ、len(names) >= len(numbers) の場合、タスクは可能なすべてを含むタプルを生成することです。長いリスト (名前) の要素と短いリスト (番号) の要素の組み合わせ。
例:
If names = ['a', 'b '] および数値 = [1, 2] の場合、期待される出力は次のとおりです:
解決策:
この問題に取り組む最も簡単なアプローチは、 Python の標準ライブラリの itertools.product 関数。この関数は、指定されたリスト内の要素のデカルト積を生成します。
コード:
<code class="python">import itertools a = ['foo', 'melon'] b = [True, False] c = list(itertools.product(a, b)) print(c)</code>
出力:
[('foo', True), ('foo', False), ('melon', True), ('melon', False)]
itertools.product を使用すると、長さの違いに関係なく、2 つのリストから要素の可能なすべての組み合わせを効率的に生成できます。この手法は、特定の問題に対するシンプルかつ簡潔な解決策を提供します。
以上が以下に、形式と直接性の異なるいくつかのタイトルのオプションを示します。 フォーマル: * 異なる長さのリストのすべての一致する順列を生成する方法 * 異なる要素からの効率的なマッチング -の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。