Maison > développement back-end > Tutoriel Python > Comment extraire efficacement chaque nième élément d'une liste en Python ?

Comment extraire efficacement chaque nième élément d'une liste en Python ?

Susan Sarandon
Libérer: 2024-10-20 11:17:30
original
197 Les gens l'ont consulté

How to Efficiently Extract Every Nth Element from a List in Python?

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>
Copier après la connexion

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
Copier après la connexion

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!

source:php
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal