Comment vérifier si une variable est un tuple 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 une variable est un tuple en Python. Le laboratoire commence par présenter les tuples comme des structures de données immuables, similaires aux listes, et démontre leur création, l'accès aux éléments et la contrainte d'immuabilité grâce à des exemples pratiques utilisant le fichier tuple_example.py.

Le laboratoire vous guide ensuite dans l'utilisation de la fonction type() et de la fonction isinstance() pour identifier si une variable est un tuple. Vous créerez et exécuterez des scripts Python pour observer la sortie de ces fonctions lorsqu'elles sont appliquées à des tuples et à d'autres types de données, renforçant ainsi votre compréhension de la manière de déterminer de manière programmée si une variable contient un tuple.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/BasicConceptsGroup -.-> python/type_conversion("Type Conversion") python/DataStructuresGroup -.-> python/tuples("Tuples") python/ModulesandPackagesGroup -.-> python/standard_libraries("Common Standard Libraries") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/variables_data_types -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} python/numeric_types -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} python/type_conversion -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} python/tuples -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} python/standard_libraries -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} python/data_collections -.-> lab-559604{{"Comment vérifier si une variable est un tuple en Python"}} end

Comprendre les tuples

Dans cette étape, vous apprendrez à connaître les tuples en Python. Les tuples sont une structure de données fondamentale, similaires aux listes, mais avec une différence essentielle : ils sont immuables. Cela signifie qu'une fois qu'un tuple est créé, ses éléments ne peuvent pas être modifiés. Cette immuabilité rend les tuples utiles pour représenter des collections fixes d'éléments.

Commençons par créer un simple tuple :

my_tuple = (1, 2, 3)
print(my_tuple)

Créez un fichier nommé tuple_example.py dans votre répertoire ~/project en utilisant l'éditeur VS Code. Copiez et collez le code ci-dessus dans le fichier.

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

python tuple_example.py

Vous devriez voir la sortie suivante :

(1, 2, 3)

Les tuples sont définis en utilisant des parenthèses () et les éléments sont séparés par des virgules.

Maintenant, essayons d'accéder aux éléments du tuple :

my_tuple = (1, 2, 3)
print(my_tuple[0])
print(my_tuple[1])
print(my_tuple[2])

Ajoutez ces lignes à votre fichier tuple_example.py et exécutez-le à nouveau :

python tuple_example.py

Vous devriez voir la sortie suivante :

(1, 2, 3)
1
2
3

Vous pouvez accéder aux éléments d'un tuple en utilisant leur index, tout comme avec les listes. N'oubliez pas que l'indexation commence à 0.

Maintenant, essayons de modifier un tuple :

my_tuple = (1, 2, 3)
my_tuple[0] = 4  ## This will cause an error

Ajoutez cette ligne à votre fichier tuple_example.py. Lorsque vous exécutez le script, vous rencontrerez une erreur TypeError :

python tuple_example.py
Traceback (most recent call last):
  File "/home/labex/project/tuple_example.py", line 2, in <module>
    my_tuple[0] = 4
TypeError: 'tuple' object does not support item assignment

Ce message d'erreur confirme que les tuples sont immuables. Vous ne pouvez pas modifier leurs éléments une fois qu'ils sont créés.

Les tuples peuvent également contenir différents types de données :

my_tuple = (1, "hello", 3.14)
print(my_tuple)

Modifiez votre fichier tuple_example.py pour inclure ce code et exécutez-le :

python tuple_example.py

Vous devriez voir la sortie suivante :

(1, 'hello', 3.14)

Les tuples sont une structure de données polyvalente en Python, souvent utilisées lorsque vous avez besoin de vous assurer que les données restent constantes tout au long de votre programme.

Utiliser la fonction type() pour identifier

Dans cette étape, vous apprendrez à utiliser la fonction type() en Python pour identifier le type de données d'une variable. C'est un outil utile pour comprendre le type de données avec lequel vous travaillez, en particulier lorsque vous manipulez différentes structures de données telles que les tuples, les listes et autres.

Commençons par utiliser type() pour identifier le type d'un tuple :

my_tuple = (1, 2, 3)
print(type(my_tuple))

Ajoutez ces lignes à votre fichier tuple_example.py (vous pouvez soit remplacer le contenu existant, soit l'ajouter).

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

python tuple_example.py

Vous devriez voir la sortie suivante :

<class 'tuple'>

La sortie <class 'tuple'> indique que la variable my_tuple est bien un tuple.

Maintenant, essayons d'utiliser type() avec d'autres types de données :

my_list = [1, 2, 3]
my_string = "hello"
my_integer = 10
my_float = 3.14

print(type(my_list))
print(type(my_string))
print(type(my_integer))
print(type(my_float))

Ajoutez ces lignes à votre fichier tuple_example.py et exécutez-le à nouveau :

python tuple_example.py

Vous devriez voir la sortie suivante :

<class 'tuple'>
<class 'list'>
<class 'str'>
<class 'int'>
<class 'float'>

Comme vous pouvez le voir, type() identifie correctement le type de données de chaque variable. Cela peut être très utile lorsque vous travaillez avec des structures de données complexes ou lorsque vous devez vous assurer qu'une variable est d'un type spécifique avant d'effectuer une opération.

La fonction type() est un outil simple mais puissant pour comprendre les types de données dans votre code Python.

Confirmer avec isinstance()

Dans cette étape, vous apprendrez à utiliser la fonction isinstance() en Python pour confirmer si une variable est d'un type spécifique. Cette fonction est particulièrement utile pour valider les types de données et vous assurer que votre code se comporte comme prévu.

Commençons par utiliser isinstance() pour vérifier si une variable est un tuple :

my_tuple = (1, 2, 3)
print(isinstance(my_tuple, tuple))

Ajoutez ces lignes à votre fichier tuple_example.py (vous pouvez soit remplacer le contenu existant, soit l'ajouter).

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

python tuple_example.py

Vous devriez voir la sortie suivante :

True

La sortie True indique que la variable my_tuple est bien un tuple.

Maintenant, essayons d'utiliser isinstance() avec d'autres types de données et voyons ce qui se passe lorsque la variable n'est pas du type spécifié :

my_list = [1, 2, 3]
my_string = "hello"
my_integer = 10
my_float = 3.14

print(isinstance(my_list, tuple))
print(isinstance(my_string, str))
print(isinstance(my_integer, int))
print(isinstance(my_float, float))

Ajoutez ces lignes à votre fichier tuple_example.py et exécutez-le à nouveau :

python tuple_example.py

Vous devriez voir la sortie suivante :

True
False
True
True
True

Comme vous pouvez le voir, isinstance() renvoie True si la variable est du type spécifié et False sinon. C'est une méthode plus robuste pour vérifier les types de données que type(), car elle prend également en compte l'héritage.

Par exemple, si vous avez une classe personnalisée qui hérite de tuple, isinstance() renverra True lors de la vérification si une instance de cette classe est un tuple, tandis que type() renverrait le type de la classe personnalisée.

La fonction isinstance() est un outil précieux pour valider les types de données et garantir la correction de votre code Python.

Résumé

Dans ce laboratoire (lab), vous avez appris à connaître les tuples en Python, une structure de données similaire aux listes mais immuable. Vous avez créé un fichier tuple_example.py et expérimenté avec les tuples, en observant qu'ils sont définis à l'aide de parenthèses, que les éléments sont accessibles via l'indexation (en commençant par 0), et qu'une tentative de modification d'un tuple lève une erreur TypeError en raison de son immutabilité.

Vous avez également vu que les tuples peuvent contenir des éléments de différents types de données. Le laboratoire a ensuite présenté deux méthodes pour vérifier si une variable est un tuple : en utilisant la fonction type() pour vérifier directement le type et en utilisant la fonction isinstance() pour une vérification plus flexible, particulièrement utile lorsqu'on considère l'héritage.