Extraire chaque Nième élément d'une liste en Python
Face à la tâche d'extraire chaque Nième élément d'une liste, comme la sélection chaque 10ème élément d'une liste d'entiers allant de 0 à 1000, une approche simple peut impliquer d'utiliser une boucle for pour parcourir la liste et vérifier le module de l'index de chaque élément par N. Cependant, il existe une méthode plus efficace et plus élégante qui peut obtenir le même résultat avec une seule ligne de code.
En utilisant la syntaxe de découpage de Python, nous pouvons extraire chaque Nième élément en spécifiant une taille de pas de N. Dans l'exemple fourni, nous pouvons obtenir la liste souhaitée en utilisant le code suivant :
<code class="python">xs = list(range(165)) result = xs[0::10]</code>
Cette méthode est considérablement plus rapide que la vérification itérative de l'index de chaque élément, comme le démontre la comparaison temporelle suivante :
$ python -m timeit -s "xs = list(range(1000))" "[x for i, x in enumerate(xs) if i % 10 == 0]" 500 loops, best of 5: 476 usec per loop $ python -m timeit -s "xs = list(range(1000))" "xs[0::10]" 100000 loops, best of 5: 3.32 usec per loop
En utilisant la syntaxe de découpage, nous pouvons efficacement extraire chaque Nième élément d'une liste en Python, ce qui est particulièrement bénéfique pour les grandes listes où la vitesse est un problème.
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!