Maison > développement back-end > Tutoriel Python > Comment pouvons-nous éliminer les éléments en double consécutifs d'une liste en Python ?

Comment pouvons-nous éliminer les éléments en double consécutifs d'une liste en Python ?

Linda Hamilton
Libérer: 2024-12-01 01:12:11
original
237 Les gens l'ont consulté

How Can We Eliminate Consecutive Duplicate Elements from a List in Python?

Élimination des doublons consécutifs dans les éléments de la liste : au-delà de la simple suppression jusqu'à l'élimination des éléments

Alors que l'approche initiale a réussi à supprimer les doublons consécutifs des éléments de la liste, il n’a pas réussi à éliminer les éléments eux-mêmes. Pour y parvenir, une stratégie plus raffinée est nécessaire.

La solution fournie via itertools.groupby() offre une approche efficace. Il regroupe les éléments consécutifs et renvoie la clé de chaque groupe. En sélectionnant les clés, on peut récupérer les éléments uniques dans la liste :

L = [1,1,1,1,1,1,2,3,4,4,5,1,2]
from itertools import groupby
[key for key, _group in groupby(L)]
Copier après la connexion

Pour la deuxième partie de la question, où le but est d'éliminer les éléments avec des doublons consécutifs, le code modifié au sein du groupby( ) répond à cette exigence :

[k for k, g in groupby(L) if sum(1 for i in g) < 2]
Copier après la connexion

Cette approche utilise une expression génératrice pour calculer le nombre d'éléments dans chaque groupe. En sélectionnant des clés pour les groupes de moins de deux éléments, nous éliminons efficacement les doublons consécutifs. Le résultat est une solution concise et élégante.

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.cn
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