Outils pour utilisateurs

Outils du site


nsi:langages:python:dictionnaire

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
nsi:langages:python:dictionnaire [2021/10/22 23:37] – ↷ Page déplacée de nsi:tds:serveur_web20:langages:python:dictionnaire à nsi:langages:python:dictionnaire goupillwikinsi:langages:python:dictionnaire [2025/02/10 13:26] (Version actuelle) goupillwiki
Ligne 27: Ligne 27:
  
 <Code:python> <Code:python>
-gentile = [+gentiles = [
     ("Paris", "Parisien"),     ("Paris", "Parisien"),
     ("Marseille", "Marseillais"),     ("Marseille", "Marseillais"),
Ligne 37: Ligne 37:
 Comment obtenir le gentilé pour ''%%"Saint-Denis"%%'' ? Comment obtenir le gentilé pour ''%%"Saint-Denis"%%'' ?
  
-> C'est possible mais cela suppose de parcourir le tableau à la recherche de ''%%"Saint-Denis"%%''. On irait plus vite si on pouvait écrire quelque chose comme ''%%gentile["Saint-Denis"]%%''+> C'est possible mais cela suppose de parcourir le tableau à la recherche de ''%%"Saint-Denis"%%''. On irait plus vite si on pouvait écrire quelque chose comme ''%%gentiles["Saint-Denis"]%%''
  
 <Code:python> <Code:python>
-def ville_to_gentile(ville): +def ville_to_gentile(ville, gentiles): 
-    for v, g in gentile:+    """ 
 +    ville: ville recherchée 
 +    gentiles: liste des paires (ville, gentilé) 
 +    renvoie le gentilé associé à une ville, None si pas trouvé 
 +    """ 
 +    for v, g in gentiles:
         if v == ville:         if v == ville:
             return g             return g
Ligne 47: Ligne 52:
 </Code> </Code>
  
-Cette méthode fonctionne mais trouvé le gentilé associé à une ville peut prendre du temps puisqu'il faut parcourir le tableau jusqu'à trouver la ville.+Cette méthode fonctionne mais trouver le gentilé associé à une ville peut prendre du temps puisqu'il faut parcourir le tableau jusqu'à trouver la ville.
  
 ==== Dictionnaire ==== ==== Dictionnaire ====
Ligne 54: Ligne 59:
  
 <Code python> <Code python>
-gentile = {+gentiles = {
     "Paris":"Parisien",     "Paris":"Parisien",
     "Marseille":"Marseillais",     "Marseille":"Marseillais",
Ligne 65: Ligne 70:
  
 <Code python> <Code python>
->>> gentile["Saint-Denis"]+>>> gentiles["Saint-Denis"]
 "Dionysien" "Dionysien"
 </Code> </Code>
Ligne 76: Ligne 81:
  
 <Code:python> <Code:python>
->>> gentile.keys()+>>> gentiles.keys()
 ['Paris', 'Marseille', 'Saint-Denis', 'Château-Thierry'] ['Paris', 'Marseille', 'Saint-Denis', 'Château-Thierry']
->>> gentile.values()+>>> gentiles.values()
 ['Parisien', 'Marseillais', 'Dionysien', 'Castelthéodoricien'] ['Parisien', 'Marseillais', 'Dionysien', 'Castelthéodoricien']
 </Code> </Code>
Ligne 85: Ligne 90:
  
 <Code python> <Code python>
->>> gentile["Dionysien"]+>>> gentiles["Dionysien"]
 KeyError: "Dionysien" KeyError: "Dionysien"
 </Code> </Code>
Ligne 104: Ligne 109:
  
 <Code python> <Code python>
-gentile = {+gentiles = {
     "Paris":"Parisien",     "Paris":"Parisien",
     "Marseille":"Marseillais",     "Marseille":"Marseillais",
Ligne 115: Ligne 120:
  
 <Code:python> <Code:python>
->>> len(gentile)+>>> len(gentiles)
 4 4
 </Code> </Code>
Ligne 124: Ligne 129:
  
 <Code:python> <Code:python>
->>> "Paris" in gentile+>>> "Paris" in gentiles
 True True
->>> "Lille" in gentile+>>> "Lille" in gentiles
 False False
->>> "Dionysien" in gentile+>>> "Dionysien" in gentiles
 False False
 </Code> </Code>
Ligne 139: Ligne 144:
  
 <Code:python> <Code:python>
->>> gentile["Château-Thierry"]+>>> gentiles["Château-Thierry"]
 'Castelthéodoricien' 'Castelthéodoricien'
->>> gentile["Lille"]+>>> gentiles["Lille"]
 KeyError KeyError
 </Code> </Code>
Ligne 148: Ligne 153:
  
 <Code:python> <Code:python>
->>> gentile.get("Château-Thierry")+>>> gentiles.get("Château-Thierry")
 'Castelthéodoricien' 'Castelthéodoricien'
->>> gentile.get("Lille")+>>> gentiles.get("Lille")
 </Code> </Code>
  
Ligne 158: Ligne 163:
  
 <Code:python> <Code:python>
->>> gentile["Lille"] = "Lillois" +>>> gentiles["Lille"] = "Lillois" 
->>> gentile["Paris"] = "Parisienne"+>>> gentiles["Paris"] = "Parisienne"
 </Code> </Code>
  
Ligne 167: Ligne 172:
  
 <Code:python> <Code:python>
->>> del gentile["Château-Thierry"]+>>> del gentiles["Château-Thierry"]
 </Code> </Code>
  
Ligne 177: Ligne 182:
  
 <Code:python> <Code:python>
-for key in gentile:+for key in gentiles:
     # boucle se répète pour chaque clé     # boucle se répète pour chaque clé
     # key prendra les valeurs "Paris", "Saint-Denis"...     # key prendra les valeurs "Paris", "Saint-Denis"...
Ligne 185: Ligne 190:
  
 <Code python> <Code python>
-gentile = {+gentiles = {
     "Paris":"Parisien",     "Paris":"Parisien",
     "Marseille":"Marseillais",     "Marseille":"Marseillais",
Ligne 199: Ligne 204:
  
 <Code:python> <Code:python>
-for item in gentile.values():+for item in gentiles.values():
     # répété pour chaque paire, ordre imprévisible     # répété pour chaque paire, ordre imprévisible
     # item prend les valeurs "Parisien", "Marseillais"...     # item prend les valeurs "Parisien", "Marseillais"...
Ligne 207: Ligne 212:
  
 <Code:python> <Code:python>
-for key, item in gentile.items():+for key, item in gentiles.items():
     # parcours simultané des clé et valeurs     # parcours simultané des clé et valeurs
     # key vaut la clé, item la valeur associée     # key vaut la clé, item la valeur associée
Ligne 235: Ligne 240:
  
 <Code:python> <Code:python>
-gentile = [+gentiles = [
     ("Paris", "Parisien"),     ("Paris", "Parisien"),
     ("Marseille", "Marseillais"),     ("Marseille", "Marseillais"),
Ligne 243: Ligne 248:
 </Code> </Code>
  
-Mais (déjà dit) pour trouver le gentilé de `"Saint-Denis"(par exemple) il faut parcourir le tableau. Cela peut-être long si le tableau est grand.+Mais (déjà dit) pour trouver le gentilé de ''%%"Saint-Denis"%%'' (par exemple) il faut parcourir le tableau. Cela peut-être long si le tableau est grand.
  
 Dans le cas d'un tableau, par exemple : Dans le cas d'un tableau, par exemple :
Ligne 292: Ligne 297:
 </Code> </Code>
  
-Ensuite quand je demande ''%%gentile["Paris"]%%'', le calcul ''%%hash("Paris") % 3%%'' nous dit que l'on doit regarder à la case 2 et chercher dans les items qui s'y trouvent.+Ensuite quand je demande ''%%gentiles["Paris"]%%'', le calcul ''%%hash("Paris") % 3%%'' nous dit que l'on doit regarder à la case 2 et chercher dans les items qui s'y trouvent.
  
 Cela donne de bons résultats si chaque case est peu remplie. Python peut modifier la taille du tableau si le nombre d'éléments augmente, tout cela sans que l'utilisateur ait quoi que ce soit à faire. Cela donne de bons résultats si chaque case est peu remplie. Python peut modifier la taille du tableau si le nombre d'éléments augmente, tout cela sans que l'utilisateur ait quoi que ce soit à faire.
nsi/langages/python/dictionnaire.1634938671.txt.gz · Dernière modification : de goupillwiki