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!