ホームページ  >  記事  >  バックエンド開発  >  以下に、形式と直接性の異なるいくつかのタイトルのオプションを示します。 フォーマル: * 異なる長さのリストのすべての一致する順列を生成する方法 * 異なる要素からの効率的なマッチング -

以下に、形式と直接性の異なるいくつかのタイトルのオプションを示します。 フォーマル: * 異なる長さのリストのすべての一致する順列を生成する方法 * 異なる要素からの効率的なマッチング -

Susan Sarandon
Susan Sarandonオリジナル
2024-10-27 11:55:02590ブラウズ

Here are a few title options, varying in formality and directness:

Formal:

* How to Generate All Matching Permutations of Lists with Different Lengths
* Efficiently Matching Elements from Disparate-Length Lists: A Solution using itertools.product

Infor

異なる長さのリストの順列の一致

プログラミングの領域では、長さが異なる 2 つのリストを扱うときに共通の課題が発生します。特定の組み合わせで要素を一致させようとします。

次のシナリオを考えてみましょう: 名前と数値という 2 つのリストが与えられ、len(names) >= len(numbers) の場合、タスクは可能なすべてを含むタプルを生成することです。長いリスト (名前) の要素と短いリスト (番号) の要素の組み合わせ。

例:

If names = ['a', 'b '] および数値 = [1, 2] の場合、期待される出力は次のとおりです:

  • [('a', 1), ('b', 2)]
  • [( 'b', 1), ('a', 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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。