How Can I Zip Unequal Length Lists by Repeating the Shorter One?

DDD
Release: 2024-10-27 19:18:01
Original
282 people have browsed it

How Can I Zip Unequal Length Lists by Repeating the Shorter One?

Zipping Differently Sized Lists by Repeating the Shorter One

When attempting to zip two lists with unequal lengths, the built-in zip function falls short by not repeating the shorter list to match the larger one. To overcome this, alternative approaches are necessary.

Solution Using itertools.cycle

The itertools.cycle function provides the ability to iterate over an iterable endlessly. This feature can be leveraged to repeat the shorter list indefinitely while zipping it with the longer list.

Implementation:

<code class="python">import itertools

A = [1, 2, 3, 4, 5, 6, 7, 8, 9]
B = ["A", "B", "C"]

zip_list = zip(A, itertools.cycle(B)) if len(A) > len(B) else zip(itertools.cycle(A), B)</code>
Copy after login

In this solution, we use a conditional statement to determine which list should be repeated. If A is longer than B, we use itertools.cycle to repeat B, and if B is longer than A, we repeat A.

The resulting zip_list will contain tuples pairing elements from A and B, with B being repeated as necessary to match the length of A. This approach ensures that all elements from both lists are paired together, with the shorter list repeating as needed.

The above is the detailed content of How Can I Zip Unequal Length Lists by Repeating the Shorter One?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!