Maison >développement back-end >Tutoriel Python >Comment trouver l'intersection de plusieurs listes dans une liste en Python ?

Comment trouver l'intersection de plusieurs listes dans une liste en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-21 22:14:021152parcourir

How to Find the Intersection of Multiple Lists within a List in Python?

Trouver l'intersection de plusieurs listes en Python

En Python, déterminer l'intersection de deux listes est simple à l'aide de set.intersection() méthode. Cependant, la question se pose : comment trouver l'intersection de plusieurs listes au sein d'une liste ?

Considérons le scénario où nous avons une liste de listes, bien nommée d, contenant trois éléments a, b et c, comme indiqué ci-dessous :

<code class="python">d = [[1, 2, 3, 4], [2, 3, 4], [3, 4, 5, 6, 7]]</code>

Pour déterminer l'intersection des trois listes, nous pouvons exploiter la méthode set.intersection() de Python et la fonction map(). La fonction map() prend deux arguments : une fonction et un itérable. Dans ce cas, nous appliquons la fonction map() avec la fonction set() pour convertir chaque élément de liste dans d en un ensemble. Le résultat résultant est une liste d'ensembles.

Enfin, nous utilisons la méthode set.intersection() pour calculer l'intersection de ces ensembles, trouvant efficacement l'intersection des trois listes dans d.

<code class="python">intersection = set.intersection(*map(set, d))</code>

En exécutant ce code, nous obtenons l'intersection souhaitée :

<code class="python">print(intersection)  # Output: {3, 4}</code>

Par conséquent, même lorsqu'il s'agit de plusieurs listes au sein d'une liste, Python fournit une solution concise pour déterminer leur intersection à l'aide de set.intersection () en conjonction avec la fonction map().

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