ajout exercices dictionnaires et correction
This commit is contained in:
@@ -114,11 +114,11 @@ for (cle, val) in perso.items():
|
||||
print(cle, "->", val)
|
||||
```
|
||||
|
||||
✏ Par défaut, on itère sur les clés.
|
||||
Par défaut, on itère sur les clés.
|
||||
|
||||
--------
|
||||
|
||||
### À retenir
|
||||
## À retenir
|
||||
|
||||
| Opération | Résultat |
|
||||
| ---------------------- | ------------------------------------------------------------ |
|
||||
@@ -128,4 +128,12 @@ for (cle, val) in perso.items():
|
||||
| x in dico.keys() | renvoie True si une clé de dico est égale à x, False sinon |
|
||||
| dico[k] = v | Modifie la valeur v associée à la clé k ou l'ajoute si elle n'existe pas |
|
||||
| dico.get(k, v) | Renvoie la valeur associé à la clé k. Si la clé k n'existe pas, renvoie la valeur v |
|
||||
| del dico(k) | Enlève du dictionnaire la clé k |
|
||||
| del dico(k) | Enlève du dictionnaire la clé k |
|
||||
|
||||
----------
|
||||
|
||||
Auteur : Florian Mathieu
|
||||
|
||||
Licence CC BY NC
|
||||
|
||||
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="Licence Creative Commons" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a> <br />Ce cours est mis à disposition selon les termes de la <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International</a>.
|
||||
@@ -1,6 +1,6 @@
|
||||
## Exercice
|
||||
### Exercice 1
|
||||
|
||||
### Itérer sur les éléments d'un dictionnaire
|
||||
#### Itérer sur les éléments d'un dictionnaire
|
||||
|
||||
Au zoo de Beauval, il y a 5 éléphants d'Asie, 17 écureuils d'Asie, 7 hippopotames d'Afrique...
|
||||
|
||||
@@ -29,7 +29,7 @@ zoo_LaFleche = {
|
||||
|
||||
|
||||
|
||||
#### Question n°1
|
||||
##### Question n°1
|
||||
|
||||
On souhaite créer une fonction *plus_grand_nombre* ( ) qui prend un zoo en paramètre et renvoie le nom de l'animal le plus présent au sein du zoo.
|
||||
|
||||
@@ -78,7 +78,7 @@ def plus_grand_nombre(zoo):
|
||||
|
||||
Note : ici, la variable **x** fait référence à une donnée que nous n'utilisons pas.
|
||||
|
||||
#### Question n°2
|
||||
##### Question n°2
|
||||
|
||||
On souhaite se doter d'une fonction *nombre_total* ( ) qui prend un zoo ainsi que le nom d'un continent en paramètre, et qui renvoie le nombre d'animaux originaires de ce continent dans le zoo.
|
||||
|
||||
@@ -125,7 +125,7 @@ def nombre_total(zoo, continent):
|
||||
|
||||
|
||||
|
||||
#### Question n°3
|
||||
##### Question n°3
|
||||
|
||||
Enfin, on souhaite écrire une fonction nombre, qui prendun zoo ainsi qu'un nom d'animal en paramètre, et qui renvoie le nombre de représentants de cet animal dans le zoo.
|
||||
|
||||
@@ -164,3 +164,119 @@ def nombre(zoo, animal):
|
||||
return zoo[animal][1]
|
||||
```
|
||||
|
||||
--------
|
||||
|
||||
### Exercice 2
|
||||
|
||||
|
||||
|
||||
##### Question 1
|
||||
|
||||
|
||||
|
||||
```python
|
||||
# Création du dictionnaire
|
||||
livre = {
|
||||
"titre": "1984",
|
||||
"auteur": "George Orwell",
|
||||
"annee_publication": 1949
|
||||
}
|
||||
|
||||
# Modification des informations
|
||||
livre["annee_publication"] = 1950
|
||||
|
||||
# On affiche des détails du livre
|
||||
for cle, valeur in livre.items():
|
||||
print(f"{cle}: {valeur}")
|
||||
```
|
||||
|
||||
|
||||
|
||||
##### Question 2
|
||||
|
||||
```python
|
||||
# Création du dictionnaire
|
||||
liste_courses = {
|
||||
"pommes": 5,
|
||||
"bananes": 10,
|
||||
"lait": 2
|
||||
}
|
||||
|
||||
# Parcours du dictionnaire et affichage des articles
|
||||
for article, quantite in liste_courses.items():
|
||||
print(f"{article}: {quantite}")
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
##### Question 3
|
||||
|
||||
```python
|
||||
# Définir une fonction pour vérifier si une clé est dans un dictionnaire
|
||||
def est_present(dictionnaire, cle):
|
||||
if cle in dictionnaire:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
# Test
|
||||
dictionnaire_test = {"pomme": 1, "banane": 2, "cerise": 3}
|
||||
(est_present(dictionnaire_test, "pomme"))
|
||||
True
|
||||
(est_present(dictionnaire_test, "orange"))
|
||||
False
|
||||
```
|
||||
|
||||
|
||||
|
||||
##### Question 4
|
||||
|
||||
```python
|
||||
# Créer un carnet d'adresses vide
|
||||
carnet_adresses = {}
|
||||
|
||||
# Définir une fonction pour ajouter un nouveau contact
|
||||
def ajouter_contact(nom, telephone):
|
||||
carnet_adresses[nom] = telephone
|
||||
|
||||
# Définir une fonction pour modifier un contact existant
|
||||
def modifier_contact(nom, telephone):
|
||||
if nom in carnet_adresses:
|
||||
carnet_adresses[nom] = telephone
|
||||
|
||||
# Définir une fonction pour supprimer un contact
|
||||
def supprimer_contact(nom):
|
||||
if nom in carnet_adresses:
|
||||
del carnet_adresses[nom]
|
||||
|
||||
# Tester les fonctions
|
||||
ajouter_contact("Alice", "06-12-34-56-78")
|
||||
ajouter_contact("Bob", "06-87-65-43-21")
|
||||
modifier_contact("Alice", "07-12-34-56-78")
|
||||
supprimer_contact("Bob")
|
||||
|
||||
# Afficher le carnet d'adresses pour vérifier qu'il fonctionne correctement
|
||||
print(carnet_adresses)
|
||||
```
|
||||
|
||||
|
||||
|
||||
##### Question 5
|
||||
|
||||
```python
|
||||
# Définir une fonction pour vérifier si une clé est dans un dictionnaire
|
||||
def est_present(dictionnaire, cle):
|
||||
if cle in dictionnaire:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
# Test
|
||||
dictionnaire_test = {"pomme": 1, "banane": 2, "cerise": 3}
|
||||
(est_present(dictionnaire_test, "pomme"))
|
||||
True
|
||||
(est_present(dictionnaire_test, "orange"))
|
||||
False
|
||||
```
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
## Exercice
|
||||
## Exercices
|
||||
|
||||
### Itérer sur les éléments d'un dictionnaire
|
||||
### Exercice 1
|
||||
|
||||
#### Itérer sur les éléments d'un dictionnaire
|
||||
|
||||
Au zoo de Beauval, il y a 5 éléphants d'Asie, 17 écureuils d'Asie, 7 hippopotames d'Afrique...
|
||||
|
||||
@@ -29,7 +31,7 @@ zoo_LaFleche = {
|
||||
|
||||
|
||||
|
||||
#### Question n°1
|
||||
##### Question n°1
|
||||
|
||||
On souhaite créer une fonction *plus_grand_nombre* ( ) qui prend un zoo en paramètre et renvoie le nom de l'animal le plus présent au sein du zoo.
|
||||
|
||||
@@ -70,7 +72,7 @@ def plus_grand_nombre(zoo):
|
||||
|
||||
|
||||
|
||||
#### Question n°2
|
||||
##### Question n°2
|
||||
|
||||
On souhaite se doter d'une fonction *nombre_total* ( ) qui prend un zoo ainsi que le nom d'un continent en paramètre, et qui renvoie le nombre d'animaux originaires de ce continent dans le zoo.
|
||||
|
||||
@@ -112,7 +114,7 @@ def nombre_total(zoo, continent):
|
||||
|
||||
|
||||
|
||||
#### Question n°3
|
||||
##### Question n°3
|
||||
|
||||
Enfin, on souhaite écrire une fonction nombre, qui prendun zoo ainsi qu'un nom d'animal en paramètre, et qui renvoie le nombre de représentants de cet animal dans le zoo.
|
||||
|
||||
@@ -146,3 +148,83 @@ def nombre(zoo, animal):
|
||||
pass
|
||||
```
|
||||
|
||||
|
||||
|
||||
--------
|
||||
|
||||
### Exercice 2
|
||||
|
||||
|
||||
|
||||
#### Question 1
|
||||
|
||||
- **Utilisation de base des dictionnaires :** Créer un dictionnaire pour stocker les informations d'un livre, comme le titre, l'auteur et l'année de publication. Puis, ajouter des instructions pour modifier ces informations et afficher les détails du livre.
|
||||
|
||||
|
||||
|
||||
Exemple :
|
||||
|
||||
```python
|
||||
titre: 1984
|
||||
auteur: George Orwell
|
||||
annee_publication: 1950
|
||||
```
|
||||
|
||||
|
||||
|
||||
#### Question 2
|
||||
|
||||
- **Parcours d'un dictionnaire :** Créer un dictionnaire pour stocker une liste de courses, avec le nom de l'article comme clé et la quantité nécessaire comme valeur. Ensuite, écrire un programme qui parcourt le dictionnaire et affiche chaque article et sa quantité.
|
||||
|
||||
Exemple :
|
||||
|
||||
```python
|
||||
pommes: 5
|
||||
bananes: 10
|
||||
lait: 2
|
||||
```
|
||||
|
||||
|
||||
|
||||
#### Question 3
|
||||
|
||||
- **Dictionnaire et liste :** Créer un programme qui prend une liste de nombres et renvoie un dictionnaire avec la fréquence de chaque nombre dans la liste.
|
||||
|
||||
Exemple :
|
||||
|
||||
```python
|
||||
(compter_frequences([1, 2, 2, 3, 3, 3]))
|
||||
>> {1: 1, 2: 2, 3: 3}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#### Question 4
|
||||
|
||||
- **Gestion de données : **Créer un carnet d'adresses simple en utilisant un dictionnaire. Le carnet d'adresses doit être capable d'ajouter, de modifier et de supprimer des contacts.
|
||||
|
||||
|
||||
|
||||
Exemple :
|
||||
|
||||
```python
|
||||
{'Alice': '07-12-34-56-78'}
|
||||
```
|
||||
|
||||
|
||||
|
||||
#### Question 5
|
||||
|
||||
- **Recherche dans un dictionnaire :** Écrire une fonction qui vérifie si une clé donnée est présente dans un dictionnaire.
|
||||
|
||||
Exemple :
|
||||
|
||||
```python
|
||||
>>> (est_present(dictionnaire_test, "pomme"))
|
||||
True
|
||||
>>> (est_present(dictionnaire_test, "orange"))
|
||||
False
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user