Files
mkdocs/docs/Programmation/Python/dictionnaire.md
2019-03-15 20:20:37 +01:00

3.9 KiB

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:
>>> dict = {}

>>> type(dict)
<class 'dict'>
>>> un_dict =  {
...   "marque": "Ford",
...   "modele": "Mustang",
...   "annee": 1964
... }
>>> un_dict
{'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964}
# Constructor dict()
>>> un_dict = dict(marque="Ford", modele="Mustang", annee=1964)
>>> un_dict
{'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964}
Accéder à un item:
>>> un_dict = dict(marque="Ford", modele="Mustang", annee=1964)
>>> un_dict
{'marque': 'Ford', 'modele': 'Mustang', 'annee': 1964}
>>> x = un_dict["modele"]
>>> x
'Mustang'
>>> x = un_dict.get("modele")
>>> x
'Mustang'
Récupérer une valeur (get):
>>> dict = {'language': 'python', 'version': '3.7'}
>>>
>>> dict.get("language")
'python'
>>> dict.get("os", "pas de clé os")
'pas de clé os'
Modifier une valeur:
>>> 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:
>>> dict["language"] = "python"
>>> dict["version"] = "3.7"
>>> dict
{'language': 'python', 'version': '3.7'}
Vérifier la présence d'une clé (in):
>>> "language" in dict
True
Supprimer une entrée (del):
>>> del dict["version"]
>>> print(dict)
{'language': 'python'}
Supprimer une entrée (pop):
>>> dict.pop("version")
'3.7'
>>> dict
{'language': 'python'}
Supprimer la dernière entrée (popitem):
>>> 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):
>>> un_dict = {'language': 'python', 'version': '3.7'}
>>> del un_dict
>>> un_dict
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'un_dict' is not defined
Vider un dictionnaire (clear):
>>> un_dict = {'language': 'python', 'version': '3.7'}
>>> un_dict.clear()
>>> un_dict
{}
Récupérer les clés par une boucle (keys):
>>> 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):
>>> 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):
>>> for cle, valeur in dict.items():
...     print(cle, valeur)
...
language python
version 3.7

Vérifier si une clé existe dans un dictionnaire:

>>> dict = {'language': 'python', 'version': '3.7'}
>>> if "language" in dict:
...     print("'language' est dans dict")
...
'language' est dans dict

Longueur d'un dictionnaire:

>>> dict = {'language': 'python', 'version': '3.7'}
>>> print(len(dict))
2
Copier un dictionnaire (copy):
>>> 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()