Maison >développement back-end >Tutoriel Python >Comment trouver l'intersection des listes imbriquées en Python ?

Comment trouver l'intersection des listes imbriquées en Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-27 22:26:13692parcourir

How to Find the Intersection of Nested Lists in Python?

Intersection de listes imbriquées

La détermination de l'intersection de deux listes plates est simple à l'aide d'opérations d'ensemble ou de compréhensions de listes. Cependant, le défi se pose lorsqu'il s'agit de listes imbriquées.

Solution :

Pour trouver l'intersection des listes imbriquées, où les deux listes contiennent des sous-listes, vous pouvez exploiter l'intersection méthode de la structure de données définie. En utilisant cette méthode, vous pouvez extraire les éléments communs entre deux listes tout en ignorant la structure d'imbrication.

Voici un exemple pour démontrer cette approche :

c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63]
c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]

# Create a set from the flat list
s1 = set(c1)

# Create a set of sets from the nested list
s2 = {set(x) for x in c2}

# Find the intersection of the sets
c3 = [list(s1.intersection(x)) for x in s2]

Dans cet exemple, le résultat c3 contiendra l'intersection des listes imbriquées c1 et `c2' :

c3 = [[13, 32], [7, 13, 28], [1, 6]]

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