Je vous propose un petit exemple d'utilisation de la classe dict
en Python. Cette classe permet de manipuler des dictionnaires Python :
des tableaux associatifs permettant de mettre en relation une clé avec une valeur.
Dans l'exemple de code ci-dessous, le but du jeu et de retrouver le nombre de jours pour un mois donné (la notion d'année bissextile n'est pas gérée).
Pour ce faire un premier dictionnaire python associe les noms des mois en anglais aux nombres de jours : ce dictionnaire est appelé months
.
Un second dictionnaire associe les noms de mois en français avec ceux exprimés en anglais : c'est le dictionnaire frTranslator
. Le logiciel
permet donc de retrouver le nombre de jours d'un mois considéré, quelque soit la langue utilisée (français ou anglais).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
#!/usr/bin/python3 # -*- coding : utf-8 -*- # Un dictionnaire d'association nom de mois / jour months = { "january": 31, "february": 28, "march": 31, "april": 30, "may": 31, "june": 30, "july": 31, "august": 31, "september": 30, "october": 31, "november": 30, "december": 31 } # Un second dictionnaire d'association des noms de mois français / anglais frTranslator = { "janvier": "january", "février": "february", "mars": "march", "avril": "april", "mai": "may", "juin": "june", "juillet": "july", "août": "august", "septembre": "september", "octobre": "october", "novembre": "november", "décembre": "december" } print("Month requester - V1.0 :-)") while True: month_name = input("Please enter a month name: ").lower() if month_name == "exit": break if month_name in months: print(f"Month {month_name} contains {months[month_name]} days") elif month_name in frTranslator: month_name = frTranslator[month_name] print(f"Month {month_name} contains {months[month_name]} days") else: print("Unknown month", month_name) print("Bye bye") |
Et voici un exemple d'utilisation du programme ci-dessus.
$> ./months.py Month requester - V1.0 :-) Please enter a month name: january Month january contains 31 days Please enter a month name: février Month february contains 28 days Please enter a month name: truc Unknown month truc Please enter a month name: exit Bye bye $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :