Introduction
En Python, une liste est une collection d'éléments qui est ordonnée et modifiable. Parfois, nous avons besoin de filtrer les valeurs uniques d'une liste. Dans ce défi, vous êtes requis d'écrire une fonction Python qui prend une liste en argument et renvoie une nouvelle liste ne contenant que les valeurs non uniques.
Filtrer les valeurs uniques d'une liste
Écrivez une fonction Python appelée filter_unique(lst) qui prend une liste en argument et renvoie une nouvelle liste ne contenant que les valeurs non uniques. Pour résoudre ce problème, vous pouvez suivre les étapes suivantes :
- Utilisez
collections.Counterpour obtenir le compte de chaque valeur dans la liste. - Utilisez une compréhension de liste pour créer une liste ne contenant que les valeurs non uniques.
Votre fonction doit répondre aux exigences suivantes :
- La fonction doit prendre une liste en argument.
- La fonction doit renvoyer une nouvelle liste ne contenant que les valeurs non uniques.
- La fonction ne doit pas modifier la liste d'origine.
- La fonction doit être sensible à la casse, ce qui signifie que 'a' et 'A' sont considérées comme des valeurs différentes.
def filter_unique(lst):
## votre code ici
from collections import Counter
def filter_unique(lst):
return [item for item, count in Counter(lst).items() if count > 1]
filter_unique([1, 2, 2, 3, 4, 4, 5]) ## [2, 4]
Sommaire
Dans ce défi, vous avez appris à filtrer les valeurs uniques d'une liste à l'aide de Python. Vous avez également appris à utiliser collections.Counter pour compter les occurrences de chaque valeur dans une liste et à utiliser une compréhension de liste pour créer une nouvelle liste ne contenant que les valeurs non uniques.