Comment vérifier si une liste contient un élément spécifique 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 (atelier pratique), vous apprendrez à vérifier si une liste contient un élément spécifique en Python, une opération fondamentale pour prendre des décisions en fonction de la présence ou de l'absence d'éléments. Nous utiliserons principalement l'opérateur in pour déterminer l'appartenance à une liste.

Vous commencerez par créer une liste de fruits, puis utiliserez l'opérateur in pour vérifier la présence de fruits spécifiques tels que "banana" (banane) et "grape" (raisin). Le labo démontre comment l'opérateur in renvoie True si un élément est trouvé et False dans le cas contraire. De plus, vous explorerez l'utilisation de l'opérateur not in pour vérifier si un élément n'est pas présent dans la liste.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ErrorandExceptionHandlingGroup(["Error and Exception Handling"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/strings -.-> lab-559524{{"Comment vérifier si une liste contient un élément spécifique en Python"}} python/lists -.-> lab-559524{{"Comment vérifier si une liste contient un élément spécifique en Python"}} python/tuples -.-> lab-559524{{"Comment vérifier si une liste contient un élément spécifique en Python"}} python/catching_exceptions -.-> lab-559524{{"Comment vérifier si une liste contient un élément spécifique en Python"}} python/data_collections -.-> lab-559524{{"Comment vérifier si une liste contient un élément spécifique en Python"}} end

Comprendre l'appartenance à une liste

Dans cette étape, vous apprendrez à vérifier si un élément existe dans une liste en Python. Il s'agit d'une opération fondamentale lorsqu'on travaille avec des listes et elle est souvent utilisée pour prendre des décisions en fonction de la présence ou de l'absence d'éléments spécifiques. Nous utiliserons l'opérateur in pour y parvenir.

Tout d'abord, créons une liste de fruits :

fruits = ["apple", "banana", "cherry"]

Cette ligne de code crée une liste nommée fruits contenant trois éléments de type chaîne de caractères : "apple" (pomme), "banana" (banane) et "cherry" (cerise).

Maintenant, utilisons l'opérateur in pour vérifier si "banana" se trouve dans la liste fruits. Créez un fichier nommé membership.py dans votre répertoire ~/project en utilisant l'éditeur VS Code. Ajoutez le code suivant à membership.py :

fruits = ["apple", "banana", "cherry"]
print("banana" in fruits)

Enregistrez le fichier. Maintenant, exécutez le script en utilisant la commande suivante dans le terminal :

python membership.py

La sortie sera :

True

Cela indique que "banana" est bien présent dans la liste fruits.

Maintenant, vérifions si "grape" (raisin) se trouve dans la liste fruits. Modifiez le fichier membership.py comme suit :

fruits = ["apple", "banana", "cherry"]
print("grape" in fruits)

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

python membership.py

La sortie sera :

False

Cela indique que "grape" n'est pas présent dans la liste fruits.

L'opérateur in renvoie True si l'élément est trouvé dans la liste et False dans le cas contraire. C'est un moyen simple mais puissant de déterminer l'appartenance à une liste en Python.

Vous pouvez également utiliser l'opérateur not in pour vérifier si un élément n'est pas dans une liste. Par exemple :

fruits = ["apple", "banana", "cherry"]
print("grape" not in fruits)

Enregistrez le fichier et exécutez-le :

python membership.py

La sortie sera :

True

C'est parce que "grape" n'est pas dans la liste fruits, donc l'expression "grape" not in fruits s'évalue à True.

Utiliser l'opérateur in

Dans l'étape précédente, vous avez appris les bases de l'appartenance à une liste en utilisant l'opérateur in. Dans cette étape, nous explorerons des applications plus pratiques de l'opérateur in avec différents types de données et scénarios.

L'opérateur in n'est pas limité aux seules listes. Il peut également être utilisé avec d'autres types de données itérables comme les chaînes de caractères (strings) et les tuples.

Utilisation de in avec des chaînes de caractères :

Vous pouvez vérifier si une sous-chaîne existe dans une chaîne de caractères plus longue. Créez un fichier nommé string_membership.py dans votre répertoire ~/project en utilisant l'éditeur VS Code. Ajoutez le code suivant à string_membership.py :

text = "Hello, world!"
print("world" in text)

Enregistrez le fichier. Maintenant, exécutez le script en utilisant la commande suivante dans le terminal :

python string_membership.py

La sortie sera :

True

Cela indique que la sous-chaîne "world" est présente dans la chaîne de caractères "Hello, world!".

Essayons de vérifier pour une sous-chaîne qui n'existe pas :

text = "Hello, world!"
print("python" in text)

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

python string_membership.py

La sortie sera :

False

Cela indique que la sous-chaîne "python" n'est pas présente dans la chaîne de caractères "Hello, world!".

Utilisation de in avec des tuples :

Les tuples sont similaires aux listes, mais ils sont immuables (ne peuvent pas être modifiés après leur création). Vous pouvez également utiliser l'opérateur in avec des tuples. Créez un fichier nommé tuple_membership.py dans votre répertoire ~/project en utilisant l'éditeur VS Code. Ajoutez le code suivant à tuple_membership.py :

numbers = (1, 2, 3, 4, 5)
print(3 in numbers)

Enregistrez le fichier. Maintenant, exécutez le script en utilisant la commande suivante dans le terminal :

python tuple_membership.py

La sortie sera :

True

Cela indique que le nombre 3 est présent dans le tuple numbers.

Vérifions pour un nombre qui n'existe pas :

numbers = (1, 2, 3, 4, 5)
print(6 in numbers)

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

python tuple_membership.py

La sortie sera :

False

Cela indique que le nombre 6 n'est pas présent dans le tuple numbers.

Ces exemples démontrent la polyvalence de l'opérateur in en Python. Il peut être utilisé pour vérifier l'appartenance dans différents types de données itérables, ce qui en fait un outil précieux pour écrire un code concis et lisible.

Trouver l'index avec la méthode index()

Dans cette étape, vous apprendrez à trouver l'index d'un élément dans une liste en utilisant la méthode index(). Cette méthode est utile lorsque vous avez besoin de connaître la position d'un élément spécifique dans une liste.

Commençons avec la même liste fruits que nous avons utilisée dans les étapes précédentes. Créez un fichier nommé find_index.py dans votre répertoire ~/project en utilisant l'éditeur VS Code. Ajoutez le code suivant à find_index.py :

fruits = ["apple", "banana", "cherry"]
index_of_banana = fruits.index("banana")
print(index_of_banana)

Enregistrez le fichier. Maintenant, exécutez le script en utilisant la commande suivante dans le terminal :

python find_index.py

La sortie sera :

1

Cela indique que "banana" se trouve à l'index 1 dans la liste fruits. N'oubliez pas que les listes en Python sont indexées à partir de zéro, ce qui signifie que le premier élément est à l'index 0, le deuxième à l'index 1, et ainsi de suite.

Maintenant, essayons de trouver l'index d'un élément qui n'existe pas dans la liste :

fruits = ["apple", "banana", "cherry"]
index_of_grape = fruits.index("grape")
print(index_of_grape)

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

python find_index.py

La sortie sera :

Traceback (most recent call last):
  File "/home/labex/project/find_index.py", line 2, in <module>
    index_of_grape = fruits.index("grape")
ValueError: 'grape' is not in list

Cela lève une erreur ValueError car "grape" n'est pas trouvé dans la liste fruits. Il est important de gérer cette erreur potentielle lorsque vous utilisez la méthode index(). Vous pouvez utiliser l'opérateur in pour vérifier si un élément existe dans la liste avant d'appeler index() afin d'éviter l'erreur ValueError.

Voici un exemple de comment gérer l'erreur ValueError :

fruits = ["apple", "banana", "cherry"]
item_to_find = "grape"

if item_to_find in fruits:
    index_of_item = fruits.index(item_to_find)
    print(f"{item_to_find} is at index {index_of_item}")
else:
    print(f"{item_to_find} is not in the list")

Enregistrez le fichier et exécutez-le :

python find_index.py

La sortie sera :

grape is not in the list

Ce code vérifie d'abord si item_to_find existe dans la liste fruits en utilisant l'opérateur in. S'il existe, il trouve l'index et l'affiche. Sinon, il affiche un message indiquant que l'élément n'est pas dans la liste. Cette approche évite l'erreur ValueError et rend votre code plus robuste.

Résumé

Dans ce laboratoire (lab), vous avez appris à vérifier la présence d'éléments spécifiques dans une liste Python. La méthode principale consiste à utiliser l'opérateur in, qui renvoie True si l'élément existe dans la liste et False dans le cas contraire. Vous avez également exploré l'opérateur not in, qui offre la fonctionnalité inverse, renvoyant True si l'élément n'est pas trouvé dans la liste.

Le laboratoire a démontré ces concepts en utilisant une liste de fruits, montrant comment vérifier l'appartenance de différentes chaînes de caractères (strings) dans la liste en utilisant à la fois les opérateurs in et not in. Les exemples ont fourni des extraits de code clairs et concis qui peuvent être facilement adaptés pour diverses vérifications d'appartenance à une liste en Python.