Mini repertoire - Page 3

Précédent
  • 1
  • 2
  • 3
Utilisateur anonyme
 
Tu as répondu, sans réfléchir et surtout sans essayer

si tu lances ce code (juste ce code)
repertoire=[{"nom":"N1", "prenom":"P1", "num":1 }, {"nom":"N2", "prenom":"P2", "num":2 }, {"nom":"N3", "prenom":"P3", "num":3 }]  
def selectioncontact():
  print(repertoire)
  index = repertoire.index('e')
  print('The index of nom:', index)


selectioncontact()


Que se passe t il?
0
roro
 
rien
0
roro
 
apres je n ai jamais fait l'index je decouvre en meme temps
0
Utilisateur anonyme
 
Rien?

Moi j'ai une erreur

0
roro
 
pardon j ai une erreur aussi
0
Utilisateur anonyme
 
apres je n ai jamais fait l'index je decouvre en meme temps

OK

repertoire[0] retourne l'élément à l'index 0 du repertoire => ce que du dois faire avec un index à faire saisir par l'utilsateur

repertoire.index('machin') retourne la valeur de l'index de 'machin', si machin existe. Puisque tu ne l'as vu, c'est sans doute pas ce que ton prof attend de toi.
0
roro
 
si il nous demande Afin de conserver votre première étape (modifier une personne par son n° d'indice), vous ajouterez un menu 4 afin de modifier une personne par son nom :

- demander à l'utilisateur de saisir un nom,

- le programme recherche la personne dans l'agenda

- si elle est trouvée : reprendre ce que vous aviez fait à l'étape 1

- si elle n’a pas été trouvée : afficher le message “nom personne inexistante dans l'agenda".
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
roro
 
def modifierunepersonne():
  print(repertoire)
  changer=str(input("quel contact voulez vous modifier ?"))

  changerquoi=str(input(" tapez 4 pour modifier le nom! tapez 5 pour modifier le prenom! tapez 6 pour modifier le numero!"))

peut etres partir comme cela sauf qu'il manque le choix de l indice au debut
0
Utilisateur anonyme
 
Ha oui, je n'avais pas relu l'énoncé.
Effectivement dans un premier temps, tu dois faire la modification par l'index.
La recherche par nom viendra tout à la fin.

Donc la fonction qui sélectionne le contact doit demander l'index à l'utilisateur et transmettre le contact en question
0
roro
 
comment faire
0
Utilisateur anonyme
 
Cette fonction n'a que 2 choses à faire.
Dans tes précédents posts tu m'a montré que sais utiliser tout ce qu'il faut pour le faire.
Essaye
0
roro
 
juste je dois rendre se projet pour lundi pourriez-vous me faire la fonction modifier s'il vous plait je ne vous embête plus après
0
Utilisateur anonyme
 
Non, le but d’un exercice c’est que tu saches faire par toi-même.
Ce que tu as réussi jusqu’à là tu ne le dois qu’à toi.
Et en plus tu t’en souviendras.

Alors que si je te donne une solution toute faite, d’une part, j’irai à l’encontre des règles de ce forum, mais en plus cela ne te serai pas profitable.

Donc un pas après l’autre.
D’abord la fonction qui demande un index et retourne le contact qui correspond.
0
Neo_2014 Messages postés 38 Statut Membre 1
 
continuer = 1
repertoire=[]

def ajouterunepersonne():
  contact = {}# creation du dico
  contact["nom"]=input("saisir un nom:\n")
  contact["prenom"]=input("saisir un prenom:\n")
  contact["num"]=input("saisir un numero:\n")
  return contact

def modifier(rep):
    crep = rep
    suite = 1
    per = input('Donnez le prénom de la personne à modifier:\n')
    if per is None:
        per = ' '
    rep = sup(rep, per, 1)
    if rep == False:
        print("Il n'y a aucune personne de ce nom-là")
        suite = 0
        rep = crep
    if suite == 1:
        contact = {}# creation du dico
        contact["nom"]=input("saisir un nouveau nom:\n")
        contact["prenom"]=input("saisir un nouveau prenom:\n")
        contact["num"]=input("saisir un nouveau numero:\n")
        rep.append(contact)
        print("personne bien modifiée")
    return rep
    

def sup(rep, per = None, m = 0):
    nwrep = []
    if rep:
        supp = False
        if per is None:
            per = input('Donner le prénom de la personne à suprimer:\n')
        for e in rep:
            if e['prenom'] == per:
                supp = True
            else:
                nwrep.append(e)
        if m == 0:
            if supp == False:
                print("Il n'y a aucune personne de ce nom là")
            else:
                print('La personne a bien été supprimée')
        if m == 1:
               if supp == False:
                   return False
        rep = nwrep
    return rep
        

while continuer:
    print("1-Ajouter une personne\n2-Modifier une personne\n3-Supprimer une personne\n4-Quitter le programme")
    choix=int(input("Quel numéro choisissez-vous ?\n"))
    if choix == 1:
        repertoire.append(ajouterunepersonne())
    elif choix == 2:
        repertoire = modifier(repertoire)
    elif choix == 3:
        repertoire = sup(repertoire)
    elif choix == 4:
        print(repertoire)
        print("Merci d'avoir utilisé ce programme !")
        continuer = 0
    else:
        print("Le numéro entré n'est pas dans les choix.")

Voilà, je pense que tu peux rendre ça mais jette un oeil pour être sûr que c'est ce qu'il te fallait.
0
Utilisateur anonyme
 
Bonjour Néo,

non je ne suis pas ton père, ni le tien.

Mais donner une solution toute faite, qui ne correspond pas à l'énoncé, ce n'est pas aider.
Si roro montre ce code à son prof, il va juste se prendre un 0.

Aider c'est faire réfléchir le demandeur pour qu'il trouve sa solution
0
roro
 
moi je veux bien continuer a reflechir mais on pourrait simplifier le code de neo pour qu'il soit plus simple?
0
Utilisateur anonyme
 
C'est ton choix, mais je ne t'aiderais pas dans cette voie
0
Précédent
  • 1
  • 2
  • 3