Comment vérifier si un ensemble est un sous-ensemble d'un autre ensemble en Python

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce labo, vous apprendrez à déterminer si un ensemble est un sous-ensemble d'un autre ensemble en Python. Vous commencerez par comprendre le concept de sous-ensembles et en créant deux ensembles, set1 et set2, pour explorer leur relation. En utilisant la méthode issubset(), vous écrirez un script Python pour vérifier si set1 est un sous-ensemble de set2, en observant la sortie True ou False selon que tous les éléments de set1 sont présents dans set2.

Le labo approfondit ensuite la méthode issubset(), en explorant différents scénarios pour consolider votre compréhension. Vous modifierez les éléments des ensembles et relancerez le script pour observer comment la sortie change, renforçant ainsi le concept de sous-ensembles et la fonctionnalité de la méthode issubset().


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python/DataStructuresGroup -.-> python/sets("Sets") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/sets -.-> lab-559563{{"Comment vérifier si un ensemble est un sous-ensemble d'un autre ensemble en Python"}} python/build_in_functions -.-> lab-559563{{"Comment vérifier si un ensemble est un sous-ensemble d'un autre ensemble en Python"}} python/data_collections -.-> lab-559563{{"Comment vérifier si un ensemble est un sous-ensemble d'un autre ensemble en Python"}} end

Comprendre les sous-ensembles

Dans cette étape, vous allez apprendre à propos des sous-ensembles en Python. Un sous-ensemble est un ensemble dont tous les éléments sont contenus dans un autre ensemble. Comprendre les sous-ensembles est crucial pour diverses tâches de programmation, telles que la validation des données, le filtrage et l'analyse des relations.

Commençons par créer deux ensembles :

set1 = {1, 2, 3}
set2 = {1, 2, 3, 4, 5}

Ici, set1 contient les éléments 1, 2 et 3, tandis que set2 contient les éléments 1, 2, 3, 4 et 5. Nous voulons déterminer si set1 est un sous-ensemble de set2.

Pour ce faire, vous allez créer un script Python nommé subset_check.py dans le répertoire ~/project en utilisant l'éditeur VS Code. Ouvrez VS Code et créez un nouveau fichier nommé subset_check.py dans le répertoire ~/project.

Maintenant, ajoutez le code suivant à subset_check.py :

set1 = {1, 2, 3}
set2 = {1, 2, 3, 4, 5}

is_subset = set1.issubset(set2)

print(is_subset)

Enregistrez le fichier.

Ensuite, exécutez le script en utilisant la commande python dans le terminal :

python subset_check.py

La sortie sera :

True

Cela indique que set1 est effectivement un sous-ensemble de set2 car tous les éléments de set1 sont également présents dans set2.

Maintenant, considérons un autre exemple où set1 n'est pas un sous-ensemble de set2 :

Modifiez le fichier subset_check.py comme suit :

set1 = {1, 2, 6}
set2 = {1, 2, 3, 4, 5}

is_subset = set1.issubset(set2)

print(is_subset)

Enregistrez le fichier et exécutez-le à nouveau :

python subset_check.py

La sortie sera :

False

C'est parce que set1 contient l'élément 6, qui n'est pas présent dans set2. Par conséquent, set1 n'est pas un sous-ensemble de set2.

Utiliser la méthode issubset()

Dans l'étape précédente, vous avez appris le concept de base des sous-ensembles et avez vu un exemple simple utilisant la méthode issubset(). Dans cette étape, nous allons explorer plus en détail la méthode issubset() dans différents scénarios.

La méthode issubset() est une méthode intégrée à Python que vous pouvez utiliser avec des ensembles. Elle renvoie True si tous les éléments d'un ensemble sont présents dans un autre ensemble (l'ensemble est un sous-ensemble), et False sinon.

Considérons un scénario où nous avons deux ensembles représentant des compétences :

skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

Ici, skills1 représente les compétences d'un jeune data scientist, tandis que skills2 représente les compétences requises pour un data scientist senior. Nous voulons vérifier si les compétences du jeune data scientist sont un sous-ensemble des compétences requises pour le data scientist senior.

Ouvrez le fichier subset_check.py dans le répertoire ~/project en utilisant VS Code. Modifiez le contenu du fichier comme suit :

skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

is_subset = skills1.issubset(skills2)

print(is_subset)

Enregistrez le fichier.

Maintenant, exécutez le script en utilisant la commande python dans le terminal :

python subset_check.py

La sortie sera :

True

Cela indique que skills1 est un sous-ensemble de skills2, ce qui signifie que les compétences du jeune data scientist sont un sous-ensemble des compétences requises pour le data scientist senior.

Considérons un autre scénario où skills1 n'est pas un sous-ensemble de skills2 :

Modifiez le fichier subset_check.py comme suit :

skills1 = {"Python", "Data Analysis", "Cloud Computing"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

is_subset = skills1.issubset(skills2)

print(is_subset)

Enregistrez le fichier et exécutez-le à nouveau :

python subset_check.py

La sortie sera :

False

C'est parce que skills1 contient "Cloud Computing", qui n'est pas présent dans skills2. Par conséquent, skills1 n'est pas un sous-ensemble de skills2.

Vérifier avec l'opérateur <=

Dans l'étape précédente, vous avez appris à utiliser la méthode issubset() pour vérifier si un ensemble est un sous-ensemble d'un autre. Dans cette étape, vous allez apprendre une autre façon de vérifier les sous-ensembles en utilisant l'opérateur <=.

L'opérateur <= peut être utilisé pour vérifier si un ensemble est un sous-ensemble d'un autre. Il renvoie True si l'ensemble du côté gauche est un sous-ensemble de l'ensemble du côté droit, et False sinon.

Revoyons l'exemple des compétences de l'étape précédente :

skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

Nous voulons vérifier si skills1 est un sous-ensemble de skills2 en utilisant l'opérateur <=.

Ouvrez le fichier subset_check.py dans le répertoire ~/project en utilisant VS Code. Modifiez le contenu du fichier comme suit :

skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

is_subset = skills1 <= skills2

print(is_subset)

Enregistrez le fichier.

Maintenant, exécutez le script en utilisant la commande python dans le terminal :

python subset_check.py

La sortie sera :

True

Cela indique que skills1 est effectivement un sous-ensemble de skills2.

Considérons un autre scénario où skills1 n'est pas un sous-ensemble de skills2 :

Modifiez le fichier subset_check.py comme suit :

skills1 = {"Python", "Data Analysis", "Cloud Computing"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}

is_subset = skills1 <= skills2

print(is_subset)

Enregistrez le fichier et exécutez-le à nouveau :

python subset_check.py

La sortie sera :

False

C'est parce que skills1 contient "Cloud Computing", qui n'est pas présent dans skills2. Par conséquent, skills1 n'est pas un sous-ensemble de skills2.

Il est important de noter que l'opérateur <= renvoie également True si les deux ensembles sont égaux. Par exemple :

set1 = {1, 2, 3}
set2 = {1, 2, 3}

is_subset = set1 <= set2

print(is_subset)

La sortie sera True car set1 et set2 sont égaux. Si vous voulez vérifier si set1 est un sous-ensemble propre de set2 (c'est-à-dire que set1 est un sous-ensemble de set2 mais pas égal à set2), vous pouvez utiliser l'opérateur < à la place.

Résumé

Dans ce laboratoire, vous avez appris à vérifier si un ensemble est un sous-ensemble d'un autre ensemble en Python. Vous avez commencé par comprendre le concept de sous-ensembles, où un ensemble est considéré comme un sous-ensemble si tous ses éléments sont contenus dans un autre ensemble.

Vous avez ensuite utilisé la méthode issubset() pour déterminer si un ensemble est un sous-ensemble d'un autre. En créant des scripts Python et en les exécutant, vous avez observé comment la méthode issubset() renvoie True lorsque tous les éléments du premier ensemble sont présents dans le deuxième ensemble, et False sinon.