Maison  >  Article  >  développement back-end  >  Comment extraire élégamment chaque nième élément d'une liste en Python avec le découpage ?

Comment extraire élégamment chaque nième élément d'une liste en Python avec le découpage ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-20 11:38:30914parcourir

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

Approche en une seule ligne pour extraire chaque Nième élément d'une liste

En Python, créer une nouvelle liste contenant chaque Nième élément d'un original La liste peut être réalisée par diverses méthodes. Bien qu'une boucle for soit une option simple, elle n'est peut-être pas l'approche la plus efficace ou la plus concise.

Une solution plus élégante et plus efficace sur le plan informatique consiste à utiliser la syntaxe de découpage de Python. Considérons une liste d'entiers allant de 0 à 1000 :

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

Pour extraire le premier élément et chaque dixième élément suivant, vous pouvez utiliser le code suivant :

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

Cette notation de découpage indique que vous souhaitez commencer à l'index 0 et récupérer les éléments à intervalles de 10. Le résultat est une nouvelle liste contenant les éléments souhaités :

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

Cette approche de découpage est non seulement concise mais aussi beaucoup plus rapide que l'utilisation d'un boucle. Les tests de performance montrent que c'est environ 100 fois plus rapide que de parcourir la liste et de vérifier un module pour chaque élément.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn