Home >Backend Development >Python Tutorial >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!