Python3 Dictionnaire

Un dictionnaire est un autre type de modèle de conteneur modifiable qui peut stocker des objets de n'importe quel type.

Chaque paire clé-valeur d'un dictionnairekey=>valuepaire est séparée par un deux-points:séparée, et chaque paire est séparée par une virgule (,) séparée, le dictionnaire entier est entouré d'accolades{}, le format est le suivant :

d = {key1 : value1, key2 : value2, key3 : value3 }

Remarque :dictComme c'est un mot-clé et une fonction intégrée de Python, il n'est pas recommandé de nommer une variabledict。

Les clés doivent être uniques, mais les valeurs ne doivent pas nécessairement l'être.

Les valeurs peuvent être de n'importe quel type de données, mais les clés doivent être immuables, comme les chaînes de caractères ou les nombres.

Un exemple simple de dictionnaire :

tinydict = {'name': 'example', 'likes': 123, 'url': 'www.example.com'}

Vous pouvez également créer un dictionnaire comme ceci :

tinydict1 = { 'abc': 456 }
tinydict2 = { 'abc': 123, 98.6: 37 }

Créer un dictionnaire vide

Utilisez des accolades{ }pour créer un dictionnaire vide :

Exemple

# Utilisez des accolades {} pour créer un dictionnaire vide
emptyDict = {}
 
# Afficher le dictionnaire
print(emptyDict)
 
# Vérifier le nombre d'éléments du dictionnaire
print("Longueur :", len(emptyDict))
 
# Vérifier le type
print(type(emptyDict))

L'exemple ci-dessus produit :

{}
Length: 0
<class 'dict'>

Utilisez la fonction intégréedict()pour créer un dictionnaire :

Exemple

emptyDict = dict()
 
# Afficher le dictionnaire
print(emptyDict)
 
# Vérifier le nombre d'éléments du dictionnaire
print("Longueur :",len(emptyDict))
 
# Vérifier le type
print(type(emptyDict))

L'exemple ci-dessus produit :

{}
Length: 0
<class 'dict'>

Accéder aux valeurs d'un dictionnaire

Placez la clé correspondante entre crochets, comme dans l'exemple ci-dessous :

Exemple

#!/usr/bin/python3 tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'} print ("tinydict['Name']: ", tinydict['Name']) print ("tinydict['Age']: ", tinydict['Age'])

L'exemple ci-dessus produit :

tinydict['Name']:  Example
tinydict['Age']:  7

Si vous accédez à des données avec une clé qui n'existe pas dans le dictionnaire, une erreur sera affichée comme suit :

Exemple

#!/usr/bin/python3 tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'} print ("tinydict['Alice']: ", tinydict['Alice'])

L'exemple ci-dessus produit :

Traceback (most recent call last):
  File "test.py", line 5, in <module>
    print ("tinydict['Alice']: ", tinydict['Alice'])
KeyError: 'Alice'


Modifier le dictionnaire

La façon d'ajouter du nouveau contenu à un dictionnaire consiste à ajouter de nouvelles paires clé/valeur, ou à modifier ou supprimer des paires clé/valeur existantes, comme dans l'exemple suivant :

Exemple

#!/usr/bin/python3 tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'} tinydict['Age'] = 8 # Mettre à jour Age tinydict['School'] = "Tutoriel d'exemple" # Ajouter des informations print ("tinydict['Age']: ", tinydict['Age']) print ("tinydict['School']: ", tinydict['School'])
L'exemple ci-dessus produit :
tinydict['Age']:  8
tinydict['School']:  Example


Supprimer des éléments du dictionnaire

Vous pouvez supprimer un seul élément ou vider le dictionnaire ; le vidage ne nécessite qu'une seule opération.

Supprimer explicitement un dictionnaire à l'aide de la commande del, comme dans l'exemple suivant :

Exemple

#!/usr/bin/python3 tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'} del tinydict['Name'] # Supprimer la clé 'Name' tinydict.clear() # Vider le dictionnaire del tinydict # Supprimer le dictionnaire print ("tinydict['Age']: ", tinydict['Age']) print ("tinydict['School']: ", tinydict['School'])

Mais cela lèvera une exception, car le dictionnaire n'existe plus après l'opération del :

Traceback (most recent call last):
  File "/example-test/test.py", line 9, in <module>
    print ("tinydict['Age']: ", tinydict['Age'])
NameError: name 'tinydict' is not defined

Remarque :La méthode del() sera également abordée plus tard.


Caractéristiques des clés d'un dictionnaire

Les valeurs d'un dictionnaire peuvent être n'importe quel objet Python, qu'il s'agisse d'objets standard ou d'objets définis par l'utilisateur, mais pas les clés.

Deux points importants doivent être retenus :

1) La même clé ne peut pas apparaître deux fois. Lors de la création, si la même clé est affectée deux fois, la dernière valeur sera retenue, comme dans l'exemple suivant :

Exemple

#!/usr/bin/python3 tinydict = {'Name': 'Example', 'Âge': 7, 'Nom': 'Petit débutant'} print ("tinydict['Name']: ", tinydict['Name'])

L'exemple ci-dessus produit :

tinydict['Name']:  小Example

2) Les clés doivent être immuables, donc des nombres, des chaînes de caractères ou des tuples peuvent être utilisés, mais pas des listes, comme dans l'exemple suivant :

Exemple

#!/usr/bin/python3 tinydict = {['Name']: 'Example', 'Age': 7} print ("tinydict['Name']: ", tinydict['Name'])

L'exemple ci-dessus produit :

Traceback (most recent call last):
  File "test.py", line 3, in <module>
    tinydict = {['Name']: 'Example', 'Age': 7}
TypeError: unhashable type: 'list'


Fonctions & méthodes intégrées des dictionnaires

Les dictionnaires Python contiennent les fonctions intégrées suivantes :

Non.Fonction et descriptionExemple
1len(dict)
Compte le nombre d'éléments du dictionnaire, c'est-à-dire le nombre total de clés.
>>> tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'}
>>> len(tinydict)
3
2str(dict)
Affiche le dictionnaire, une représentation sous forme de chaîne imprimable.
>>> tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'}
>>> str(tinydict)
"{'Name': 'Example', 'Class': 'First', 'Age': 7}"
3type(variable)
Renvoie le type de la variable d'entrée. Si la variable est un dictionnaire, renvoie le type dictionnaire.
>>> tinydict = {'Name': 'Example', 'Age': 7, 'Class': 'First'}
>>> type(tinydict)
<class 'dict'>

Les dictionnaires Python contiennent les méthodes intégrées suivantes :

Non.Fonction et description
1dict.clear()
Supprime tous les éléments du dictionnaire
2dict.copy()
Renvoie une copie superficielle d'un dictionnaire
3dict.fromkeys()
Créer un nouveau dictionnaire, en utilisant les éléments de la séquence seq comme clés du dictionnaire, et val comme valeur initiale correspondant à toutes les clés du dictionnaire
4dict.get(key, default=None)
Renvoie la valeur de la clé spécifiée. Si la clé n'est pas dans le dictionnaire, renvoie la valeur par défaut définie par default.
5key in dict
Renvoie true si la clé se trouve dans le dictionnaire dict, sinon renvoie false.
6dict.items()
Renvoie un objet de vue sous forme de liste
7dict.keys()
Renvoie un objet de vue
8dict.setdefault(key, default=None)
Semblable à get(), mais si la clé n'existe pas dans le dictionnaire, la clé sera ajoutée et sa valeur définie sur default.
9dict.update(dict2)
Met à jour les paires clé/valeur du dictionnaire dict2 dans dict.
10dict.values()
Renvoie un objet de vue
11dict.pop(key[,default])
Supprime la valeur correspondant à la clé dans le dictionnaire et renvoie la valeur supprimée.
12 dict.popitem()
Renvoie et supprime la dernière paire clé-valeur du dictionnaire.
Autres extensions