# Dictionnaire Un dictionnaire est une sorte de liste, mais qui utilise des clés à la place des index. C'est une collection **non ordonnée**, **modifiable** et **indexée**. ##### Créer un dictionnaire: ```python >>> dict = {} >>> type(dict) ``` ```python >>> un_dict = { ... "marque": "Ford", ... "modele": "Mustang", ... "annee": 1964 ... } >>> un_dict {'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964} ``` ```python # Constructor dict() >>> un_dict = dict(marque="Ford", modele="Mustang", annee=1964) >>> un_dict {'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964} ``` ##### Accéder à un item: ```python >>> un_dict = dict(marque="Ford", modele="Mustang", annee=1964) >>> un_dict {'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964} ``` ```python >>> x = un_dict["modele"] >>> x 'Mustang' ``` ```python >>> x = un_dict.get("modele") >>> x 'Mustang' ``` ##### Récupérer une valeur (get): ```python >>> dict = {'language': 'python', 'version': '3.7'} >>> >>> dict.get("language") 'python' >>> dict.get("os", "pas de clé os") 'pas de clé os' ``` ##### Modifier une valeur: ```python >>> un_dict = dict(marque="Ford", modele="Mustang", annee=1964) >>> un_dict["annee"] = 1965 >>> un_dict {'marque': 'Ford', 'modele': 'Mustang', 'annee': 1965} ``` ##### Y ajouter des valeurs: ```python >>> dict["language"] = "python" >>> dict["version"] = "3.7" >>> dict {'language': 'python', 'version': '3.7'} ``` ##### Vérifier la présence d'une clé (in): ```python >>> "language" in dict True ``` ##### Supprimer une entrée (del): ```python >>> del dict["version"] >>> print(dict) {'language': 'python'} ``` ##### Supprimer une entrée (pop): ```python >>> dict.pop("version") '3.7' >>> dict {'language': 'python'} ``` ##### Supprimer la dernière entrée (popitem): ```python >>> dict["version"] = "3.7" >>> dict["type"] = "interpreté" >>> dict {'language': 'python', 'version': '3.7', 'type': 'interprete'} >>> dict.popitem() ('type', 'interprete') >>> dict {'language': 'python', 'version': '3.7'} ``` ##### Supprimer un dictionnaire (del): ```python >>> un_dict = {'language': 'python', 'version': '3.7'} >>> del un_dict >>> un_dict Traceback (most recent call last): File "", line 1, in NameError: name 'un_dict' is not defined ``` ##### Vider un dictionnaire (clear): ```python >>> un_dict = {'language': 'python', 'version': '3.7'} >>> un_dict.clear() >>> un_dict {} ``` ##### Récupérer les clés par une boucle (keys): ```python >>> for cle in dict.keys(): ... print(cle) ... language version >>> for cle in dict: ... print(cle) ... language version ``` ##### Récupérer les valeurs par une boucle (values): ```python >>> for valeur in dict.values(): ... print(valeur) ... python 3.7 >>> for val in dict: ... print(dict[val]) ... python 3.7 ``` ##### Récupérer les clés et les valeurs par une boucle (items): ```python >>> for cle, valeur in dict.items(): ... print(cle, valeur) ... language python version 3.7 ``` Vérifier si une clé existe dans un dictionnaire: ```python >>> dict = {'language': 'python', 'version': '3.7'} >>> if "language" in dict: ... print("'language' est dans dict") ... 'language' est dans dict ``` Longueur d'un dictionnaire: ```python >>> dict = {'language': 'python', 'version': '3.7'} >>> print(len(dict)) 2 ``` ##### Copier un dictionnaire (copy): ```python >>> autre_dict = dict.copy() >>> autre_dict {'language': 'python', 'version': '3.7'} ``` #### Méthodes: | Méthode | Description | | ------------ | ----------- | | clear() | | | copy() | | | fromkeys() | | | get() | | | items() | | | keys() | | | pop() | | | popitem() | | | setdefault() | | | update() | | | values() | |