Comment vérifier si un nombre se trouve dans une liste 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 laboratoire (lab), vous apprendrez à vérifier si un nombre, ou tout élément, existe dans une liste en Python. Il s'agit d'une opération fondamentale pour la manipulation de listes et la prise de décision basée sur la présence d'éléments.

Ce laboratoire vous guide tout au long de l'utilisation de l'opérateur in pour tester l'appartenance à une liste, en démontrant sa sensibilité à la casse. Vous créerez une liste de fruits et utiliserez l'opérateur in pour vérifier la présence de fruits spécifiques, y compris ceux qui sont présents, absents et qui ne diffèrent que par la casse. Vous apprendrez également à utiliser la méthode index() pour localiser la position d'un élément dans une 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/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/DataStructuresGroup -.-> python/lists("Lists") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/conditional_statements -.-> lab-559554{{"Comment vérifier si un nombre se trouve dans une liste en Python"}} python/lists -.-> lab-559554{{"Comment vérifier si un nombre se trouve dans une liste en Python"}} python/catching_exceptions -.-> lab-559554{{"Comment vérifier si un nombre se trouve dans une liste en Python"}} python/data_collections -.-> lab-559554{{"Comment vérifier si un nombre se trouve dans une liste 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 est souvent utilisée pour prendre des décisions en fonction de la présence ou de l'absence d'éléments spécifiques.

Python propose un opérateur pratique appelé in pour tester l'appartenance. L'opérateur in renvoie True si l'élément est trouvé dans la liste, et False dans le cas contraire.

Commençons par créer une liste de fruits :

fruits = ["apple", "banana", "orange", "grape"]

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

## ~/project/membership.py
fruits = ["apple", "banana", "orange", "grape"]
print("apple" in fruits)

Enregistrez le fichier et exécutez-le en utilisant la commande suivante dans le terminal :

python ~/project/membership.py

Vous devriez voir la sortie suivante :

True

Cela indique que "apple" est bien un élément de la liste fruits.

Maintenant, vérifions la présence d'un élément qui n'est pas dans la liste, comme "kiwi" :

Modifiez votre fichier membership.py pour vérifier la présence de "kiwi" :

## ~/project/membership.py
fruits = ["apple", "banana", "orange", "grape"]
print("kiwi" in fruits)

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

python ~/project/membership.py

Vous devriez voir la sortie suivante :

False

Cela confirme que "kiwi" n'est pas un élément de la liste fruits.

L'opérateur in est sensible à la casse. Cela signifie que "Apple" est différent de "apple". Illustrons cela :

Modifiez votre fichier membership.py :

## ~/project/membership.py
fruits = ["apple", "banana", "orange", "grape"]
print("Apple" in fruits)

Enregistrez le fichier et exécutez-le :

python ~/project/membership.py

Vous devriez voir :

False

Même si "apple" est dans la liste, "Apple" (avec une majuscule "A") ne l'est pas.

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

Modifiez votre fichier membership.py :

## ~/project/membership.py
fruits = ["apple", "banana", "orange", "grape"]
print("kiwi" not in fruits)

Enregistrez le fichier et exécutez-le :

python ~/project/membership.py

La sortie sera :

True

C'est parce que "kiwi" n'est pas dans la liste fruits.

Comprendre l'appartenance à une liste est essentiel pour écrire des instructions conditionnelles et contrôler le flux de vos programmes Python.

Utiliser l'opérateur in

Dans l'étape précédente, vous avez appris les bases de l'appartenance à une liste et comment vérifier si un élément existe dans une liste en utilisant l'opérateur in. Dans cette étape, nous allons explorer des applications plus pratiques de l'opérateur in, y compris son utilisation dans des instructions conditionnelles pour contrôler le flux de votre programme.

L'opérateur in est particulièrement utile dans les instructions if. Vous pouvez l'utiliser pour exécuter certains blocs de code uniquement lorsqu'un élément spécifique est présent (ou non présent) dans une liste.

Continuons avec notre exemple de liste fruits. Supposons que vous souhaitiez afficher un message uniquement si "banana" est dans la liste. Créez un fichier nommé in_operator.py dans votre répertoire ~/project :

## ~/project/in_operator.py
fruits = ["apple", "banana", "orange", "grape"]

if "banana" in fruits:
    print("Yes, banana is in the list")

Enregistrez le fichier et exécutez-le :

python ~/project/in_operator.py

Vous devriez voir la sortie suivante :

Yes, banana is in the list

L'instruction if vérifie si "banana" est dans la liste fruits. Si c'est le cas, le code à l'intérieur du bloc if (l'instruction print) est exécuté.

Maintenant, ajoutons un bloc else pour gérer le cas où l'élément n'est pas dans la liste :

Modifiez votre fichier in_operator.py :

## ~/project/in_operator.py
fruits = ["apple", "banana", "orange", "grape"]

if "kiwi" in fruits:
    print("Yes, kiwi is in the list")
else:
    print("No, kiwi is not in the list")

Enregistrez le fichier et exécutez-le :

python ~/project/in_operator.py

Vous devriez voir la sortie suivante :

No, kiwi is not in the list

Étant donné que "kiwi" n'est pas dans la liste fruits, le code à l'intérieur du bloc else est exécuté.

Vous pouvez également utiliser l'opérateur not in dans les instructions if. Par exemple :

Modifiez votre fichier in_operator.py :

## ~/project/in_operator.py
fruits = ["apple", "banana", "orange", "grape"]

if "kiwi" not in fruits:
    print("kiwi is not in the list")

Enregistrez le fichier et exécutez-le :

python ~/project/in_operator.py

La sortie sera :

kiwi is not in the list

Cela montre comment vous pouvez utiliser les opérateurs in et not in pour créer une logique plus complexe dans vos programmes Python. Ces opérateurs sont des outils essentiels pour travailler avec des listes et prendre des décisions en fonction de leur contenu.

Trouver la position avec la méthode index()

Dans les étapes précédentes, vous avez appris à vérifier si un élément existe dans une liste en utilisant l'opérateur in. Maintenant, vous allez apprendre à trouver la position (l'index) d'un élément dans une liste en utilisant la méthode index().

La méthode index() renvoie l'index de la première occurrence d'une valeur spécifiée dans une liste. Il est important de noter que si l'élément n'est pas trouvé dans la liste, la méthode index() lèvera une exception ValueError.

Continuons avec notre exemple de liste fruits. Supposons que vous souhaitiez trouver l'index de "banana" dans la liste. Créez un fichier nommé index_method.py dans votre répertoire ~/project :

## ~/project/index_method.py
fruits = ["apple", "banana", "orange", "grape"]

index = fruits.index("banana")
print(index)

Enregistrez le fichier et exécutez-le :

python ~/project/index_method.py

Vous devriez voir la sortie suivante :

1

Cela indique que "banana" se trouve à l'index 1 dans la liste fruits. N'oubliez pas que les listes 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'est pas dans la liste, comme "kiwi" :

Modifiez votre fichier index_method.py :

## ~/project/index_method.py
fruits = ["apple", "banana", "orange", "grape"]

index = fruits.index("kiwi")
print(index)

Enregistrez le fichier et exécutez-le :

python ~/project/index_method.py

Vous devriez voir un message d'erreur similaire à celui-ci :

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

Cette erreur ValueError indique que "kiwi" n'est pas trouvé dans la liste.

Pour éviter cette erreur, il est recommandé de vérifier d'abord si l'élément existe dans la liste en utilisant l'opérateur in avant d'utiliser la méthode index().

Voici comment vous pouvez le faire :

Modifiez votre fichier index_method.py :

## ~/project/index_method.py
fruits = ["apple", "banana", "orange", "grape"]

if "kiwi" in fruits:
    index = fruits.index("kiwi")
    print(index)
else:
    print("kiwi is not in the list")

Enregistrez le fichier et exécutez-le :

python ~/project/index_method.py

Vous devriez voir la sortie suivante :

kiwi is not in the list

Ce code vérifie d'abord si "kiwi" est dans la liste fruits. Si c'est le cas, il trouve l'index et l'affiche. Sinon, il affiche un message indiquant que "kiwi" n'est pas dans la liste, évitant ainsi l'erreur ValueError.

La méthode index() est un outil utile pour trouver la position des éléments dans une liste, mais il est important de gérer le cas où l'élément peut ne pas être présent pour éviter les erreurs.

Résumé

Dans ce laboratoire (lab), vous avez appris à vérifier si un élément existe dans une liste en Python en utilisant l'opérateur in. L'opérateur in renvoie True si l'élément est trouvé dans la liste et False dans le cas contraire.

Vous avez également appris que l'opérateur in est sensible à la casse (case-sensitive), ce qui signifie que "Apple" est différent de "apple". Le laboratoire a illustré ces concepts avec des exemples utilisant une liste de fruits et en vérifiant la présence d'éléments spécifiques.