Filtrer une liste de tuples en Python

Filtrer une liste de tuples en Python #

Pour filtrer une liste de tuples en Python :

  1. Utilisez une compréhension de liste pour itérer sur la liste.
  2. Retourner une condition à partir de la compréhension de la liste.
  3. La nouvelle liste ne contiendra que les tuples pour lesquels la condition est remplie.


list_of_tuples = [('Alice', 1), ('Bob', 2), ('Carl', 3), ('Dean', 4)]

filtered_list = [tup for tup in list_of_tuples if tup[1] > 2]


print(filtered_list)





filtered_list_2 = list(
    filter(
        lambda tup: tup[1] > 2,
        list_of_tuples
    )
)


print(filtered_list_2)

Nous avons utilisé une compréhension de liste pour filtrer une liste de tuples.

Les compréhensions de liste sont utilisées pour effectuer une opération pour chaque élément, ou pour sélectionner un sous-ensemble d’éléments qui remplissent une condition.

A chaque itération, on vérifie si le deuxième élément (indice 1) du tuple courant
est supérieur à 2 et renvoie le résultat.

La nouvelle liste ne contient que les tuples pour lesquels la condition a retourné une valeur vraie.
valeur vraie.

Alternativement, vous pouvez utiliser la fonction filter() fonction.

Filtrer une liste de tuples en Python :

  1. Utilisez la fonction filter() pour filtrer la liste.
  2. Le site filter renvoie un itérateur contenant les résultats.
  3. Passez le filter à l’objet list() pour le convertir en liste.
list_of_tuples = [('Alice', 1), ('Bob', 2), ('Carl', 3), ('Dean', 4)]


filtered_list_2 = list(
    filter(
        lambda tup: tup[1] > 2,
        list_of_tuples
    )
)


print(filtered_list_2)

La fonction filtre
prend une fonction et un itérable comme arguments et construit un itérateur à partir de
les éléments de l’itérable pour lesquels la fonction renvoie une valeur véridique.

Le site filter renvoie un filter nous avons donc dû passer l’objet filter à l’objet list() pour le convertir en liste.

Le site lambda est appelée avec chaque tuple de la liste, vérifie si le
deuxième élément du tuple est supérieur à 2 et renvoie le résultat.

La liste finale ne contient que les tuples pour lesquels la condition a été satisfaite.

Laisser un commentaire