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

232 lines
3.9 KiB
Markdown

# 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)
<class '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 "<stdin>", line 1, in <module>
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() | |