Maison >développement back-end >Tutoriel Python >Comment puis-je supprimer toutes les instances d'une valeur d'une liste Python ?

Comment puis-je supprimer toutes les instances d'une valeur d'une liste Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-13 19:32:14249parcourir

How Can I Remove All Instances of a Value from a Python List?

Suppression de toutes les occurrences d'une valeur d'une liste

Alors que la méthode Remove() de Python permet de supprimer une seule occurrence d'une valeur d'une liste, il peut parfois être nécessaire de supprimer toutes les occurrences de cette valeur. Voici un guide pour y parvenir :

Approche fonctionnelle :

En Python, la fonction filter() intégrée fournit un moyen simple de supprimer des éléments spécifiques d'une liste. en fonction d'une condition donnée. En utilisant des expressions lambda ou des comparaisons manuelles, nous pouvons filtrer toutes les occurrences de la valeur cible :

# Python 3.x
>>> x = [1, 2, 3, 2, 2, 2, 3, 4]
>>> list(filter((2).__ne__, x))
[1, 3, 3, 4]

Cela filtre et renvoie une nouvelle liste contenant des éléments qui ne sont pas égaux à la cible de suppression (2), efficacement supprimant toutes les occurrences de 2.

Alternativement :

>>> list(filter(lambda a: a != 2, x))
[1, 3, 3, 4]

Ici, l'expression lambda compare directement chaque élément à 2 et renvoie True s'il n'est pas égal, filtrant les valeurs cibles.

Pour Python 2.x, la fonction de filtre renvoie un itérateur :

# Python 2.x
>>> filter(lambda a: a != 2, x)
[1, 3, 3, 4]

Dans les deux versions de Python, le résultat est une liste ou un itérateur contenant les éléments qui satisfont aux conditions de filtre, excluant effectivement la valeur cible de la liste d'origine.

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