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 52 53 54 55 56 57
| # -*- coding: cp1252 -*-
#Programme qui demande à l'utilisateur d'entrer des données ou de le consulter
def rempl():
#Complète un dictionnaire contentant "nom" (comme clé),
#"age" et "taille" (comme valeurs)".
while 1:
nom = raw_input('Entrez votre nom : ').capitalize()
age = int(raw_input('Quel est votre âge? '))
taille = float(raw_input('Quelle est votre taille (en m)? '))
dico[nom] = (age, taille) #"age" et "taille" forment un tuple
rep=raw_input('\nPour encoder un autre utilisateur, appuyez sur "e", \n\
pour consulter les données, appuyez sur "c",\n pour quitter, appuyez sur "q" : ')
if rep=='c':
consult()
if rep=='q':
break
def consult():
#Consulte les données dans le dictionnaire;
#il est demandé à l'utilisateur d'entrer un nom.
nom = raw_input('Veuillez entrer le nom d\'une personne : ').capitalize()
while 1:
tupl = dico.get(nom,0) #Extrait les variables "age" et "taille"
#en tant que tuple
if tupl==0: #Ce qui se passe si le nom n'a pas été trouvé
#dans le dictionnaire
nom = raw_input('Nom introuvable. Veuillez entrer un autre nom ou \
appuyez sur <Entrée> pour quitter : ').capitalize()
if nom=='':
#print 'Endroit 1' #Balise pour expliquer mon problème
break #Voici le "break" récalcitrant
else: #Ce qui se passe si le nom a été trouvé
age = tupl[0]
taille = tupl[1]
print 'Nom: %s - Âge: %s ans - Taille: %s m.' % (nom,age,taille)
ini()
#print 'Endroit 2' #Balise pour expliquer mon problème
def ini():
#Propose à l'utilsateur d'encoder des données,de les consulter ou de quitter
#print 'Endroit 3' #Balise pour expliquer mon problème
while 1:
#print 'Endroit 4'
choix = raw_input('\nPour encoder des renseignements, appuez sur "e";\n\
Pour consulter des données, apuuyez sur "c";\n\
Pour quitter, appuyer n\'importe quelle autre touche : ')
if choix=='e':
rempl()
elif choix=='c':
consult()
else:
break
#Corps principal
dico={} #Création d'un dictionnaire
ini() |
Partager