Comprendre la vérification des types dans les dictionnaires
Dans cette étape, nous allons explorer l'importance de la vérification des types au sein des dictionnaires en Python. Les dictionnaires sont des structures de données polyvalentes qui peuvent stocker des paires clé-valeur. Cependant, pour garantir l'intégrité et la fiabilité de votre code, il est crucial de savoir comment vérifier les types des clés et des valeurs stockées dans un dictionnaire.
Les dictionnaires en Python sont définis à l'aide d'accolades {}
. Chaque élément d'un dictionnaire est composé d'une clé et d'une valeur correspondante, séparées par deux points :
.
Commençons par créer un simple dictionnaire :
## Create a dictionary
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
print(my_dict)
Enregistrez le code ci-dessus dans un fichier nommé type_checking.py
dans votre répertoire ~/project
. Vous pouvez utiliser l'éditeur VS Code pour créer et modifier ce fichier.
Maintenant, exécutez le script en utilisant la commande suivante dans le terminal :
python ~/project/type_checking.py
Vous devriez voir la sortie suivante :
{'name': 'Alice', 'age': 30, 'city': 'New York'}
Dans ce dictionnaire, les clés sont des chaînes de caractères ("name"
, "age"
, "city"
) et les valeurs sont une chaîne de caractères ("Alice"
), un entier (30
) et une autre chaîne de caractères ("New York"
).
La vérification des types devient importante lorsque vous souhaitez vous assurer que les données stockées dans votre dictionnaire correspondent à vos attentes. Par exemple, vous pourriez vouloir vérifier que l'âge est toujours un entier ou que le nom est toujours une chaîne de caractères.
Considérons un scénario où vous souhaitez ajouter une nouvelle paire clé-valeur au dictionnaire, mais vous voulez vous assurer que la valeur est d'un type spécifique.
Ouvrez le fichier type_checking.py
dans VS Code et modifiez-le comme suit :
## Create a dictionary
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
## Function to add a key-value pair with type checking
def add_item(dictionary, key, value, expected_type):
if isinstance(value, expected_type):
dictionary[key] = value
print(f"Added {key}: {value} to the dictionary.")
else:
print(f"Error: {key} must be of type {expected_type.__name__}.")
## Example usage
add_item(my_dict, "occupation", "Engineer", str)
add_item(my_dict, "salary", 75000, int)
add_item(my_dict, "is_active", True, bool)
add_item(my_dict, "height", "5.8", float) ## Intentionally incorrect type
print(my_dict)
Dans ce code, nous définissons une fonction add_item
qui prend un dictionnaire, une clé, une valeur et un type attendu en entrée. La fonction utilise la fonction isinstance()
pour vérifier si la valeur est du type attendu. Si c'est le cas, la paire clé-valeur est ajoutée au dictionnaire. Sinon, un message d'erreur est affiché.
Exécutez le script à nouveau :
python ~/project/type_checking.py
Vous devriez voir la sortie suivante :
Added occupation: Engineer to the dictionary.
Added salary: 75000 to the dictionary.
Added is_active: True to the dictionary.
Error: height must be of type float.
{'name': 'Alice', 'age': 30, 'city': 'New York', 'occupation': 'Engineer', 'salary': 75000, 'is_active': True}
Comme vous pouvez le voir, la fonction add_item
a réussi à ajouter les paires clé-valeur "occupation", "salary" et "is_active" au dictionnaire car leurs valeurs correspondent aux types attendus. Cependant, elle a affiché un message d'erreur pour "height" car la valeur fournie ("5.8") est une chaîne de caractères, tandis que le type attendu était float
.
Cet exemple démontre le concept de base de la vérification des types dans les dictionnaires. Dans les étapes suivantes, nous explorerons des techniques plus avancées pour garantir la sécurité des types dans votre code Python.