ajout exercice sur le in, ajout application de get() dans le cours, hashabilité, changement de formulation pour un exercice sur les boucles, et correction de la date de parution de 1984)
This commit is contained in:
@@ -23,7 +23,7 @@ Les dictionnaires sont des conteneurs, comme les listes et tuples, vus précéde
|
||||
|
||||
Par contre, contrairement aux types de conteneurs précédémment étudiés, on ne peut pas accéder au contenu d'un dictionnaire à l'aide d'un indice : un dictionnaire n'est pas une séquence.
|
||||
|
||||
Si on peut bien modifier les valeurs dans un dictionnaire, chaque clé est *unique et non mutable*. Elle peut être une chaîne de caractères, un nombre, un tuple de nombres...
|
||||
Si on peut bien modifier les valeurs dans un dictionnaire, chaque clé est *unique et non mutable*. Elle peut être une chaîne de caractères, un nombre, un tuple de nombres... On dit que les clés doivent être **hashables** : c'est pourquoi une liste, qui est mutable, ne peut pas servir de clé.
|
||||
|
||||
Enfin, les valeurs, quant à elles, peuvent être quelconques.
|
||||
|
||||
@@ -56,6 +56,17 @@ perso["taille"]
|
||||
KeyError "taille"
|
||||
```
|
||||
|
||||
Pour éviter cette erreur lorsqu'on n'est pas sûr que la clé existe, on peut utiliser la méthode ***get()*** qui renvoie une valeur par défaut si la clé n'existe pas :
|
||||
|
||||
```python
|
||||
perso.get("prenom", "Inconnu")
|
||||
'Bilbo'
|
||||
perso.get("taille", 0)
|
||||
0
|
||||
```
|
||||
|
||||
Le premier argument est la clé recherchée, le second est la valeur renvoyée si la clé n'existe pas. Cette méthode est très utile pour éviter les erreurs `KeyError`.
|
||||
|
||||
Tout comme les listes, on peut utiliser la fonction ***len*** pour connaître le nombre de couples stockés.
|
||||
|
||||
```python
|
||||
|
||||
Reference in New Issue
Block a user