Home >Backend Development >Python Tutorial >How to Elegantly Extract Every Nth Item from a List in Python with Slicing?

How to Elegantly Extract Every Nth Item from a List in Python with Slicing?

Barbara Streisand
Barbara StreisandOriginal
2024-10-20 11:38:30982browse

How to Elegantly Extract Every Nth Item from a List in Python with Slicing?

One-Liner Approach to Extracting Every Nth Item in a List

In Python, creating a new list containing every Nth item in an original list can be achieved through various methods. While a for loop is a straightforward option, it may not be the most efficient or concise approach.

A more elegant and computationally efficient solution is to utilize Python's slicing syntax. Consider a list of integers ranging from 0 to 1000:

<code class="python">xs = list(range(1000))</code>

To extract the first and every subsequent 10th item, you can use the following code:

<code class="python">xs[0::10]</code>

This slicing notation indicates that you want to start at index 0 and retrieve items at intervals of 10. The result is a new list containing the desired elements:

<code class="python">[0, 10, 20, 30, ..., 990]</code>

This slicing approach is not only concise but also significantly faster than using a loop. Performance benchmarks show that it is approximately 100 times faster than iterating over the list and checking a modulus for each element.

The above is the detailed content of How to Elegantly Extract Every Nth Item from a List in Python with Slicing?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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