Comment extraire chaque nième élément des listes à l'aide du découpage Python

Linda Hamilton
Libérer: 2024-10-20 11:10:02
original
689 Les gens l'ont consulté

How to Extract Every Nth Element from Lists Using Python Slicing

Extraction du nième élément à partir de listes à l'aide de Python

La tâche consiste à extraire chaque Nième élément suivant d'une liste donnée. Par exemple, étant donné une liste d'entiers [0, 1, 2, 3, ..., 997, 998, 999], l'objectif est d'obtenir une nouvelle liste contenant le premier et chaque dixième élément suivant, ce qui donne [0, 10, 20, 30, ..., 990].

Bien qu'une boucle for avec vérification de module soit une approche simple, une solution plus concise et efficace existe en utilisant l'opérateur de découpage de Python.

<code class="python">xs = list(range(1000))
new_list = xs[0::10]</code>
Copier après la connexion

Cette ligne accomplit la tâche en une seule ligne de code. La syntaxe xs[0::10] est une expression de tranche où :

  • 0 spécifie l'index de départ (inclus).
  • ::10 est une étape, qui indique de prendre tous les 10 éléments.

La new_list résultante contient les éléments souhaités, [0, 10, 20, 30, ..., 990].

Comparaison des performances

L'analyse comparative révèle que cette approche de découpage est nettement plus rapide que la solution de boucle for :

$ python -m timeit -s "xs = list(range(1000))" "[x for i, x in enumerate(xs) if i % 10 == 0]"
517 loops, best of 5: 471.776 usec per loop

$ python -m timeit -s "xs = list(range(1000))" "xs[0::10]"
100000 loops, best of 5: 4.03 usec per loop
Copier après la connexion

Cela démontre l'efficacité et la simplicité de l'approche de découpage pour extraire chaque Nième élément d'une liste dans Python.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!