不同長度清單的配對排列
在程式設計領域,處理兩個不同長度的清單時會出現一個常見的挑戰,尋求以特定組合來搭配它們的元素。
考慮以下場景:給定兩個清單、名稱和數字,其中len(names) >= len(numbers),任務是產生包含所有可能的元組較長清單中的元素(名稱)與較短清單中的元素(數字)的組合。
範例:
若名稱= ['a', 'b '] 且numbers = [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,我們可以有效地使用從兩個清單中產生所有可能的元素組合,無論它們的長度差異如何。這項技術為給定的問題提供了一個簡單而簡潔的解決方案。
以上是以下是一些標題選項,其正式性和直接性各不相同: 正式的: * 如何產生不同長度清單的所有符合排列 * 有效配合來自不同元素的元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!