Mini repertoire - Page 3

Précédent
  • 1
  • 2
  • 3
  1. 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
    1. roro
       
      rien
      0
  2. roro
     
    apres je n ai jamais fait l'index je decouvre en meme temps
    0
  3. Utilisateur anonyme
     
    Rien?

    Moi j'ai une erreur

    0
    1. roro
       
      pardon j ai une erreur aussi
      0
  4. 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
    1. 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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
    1. 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
  12. roro
     
    moi je veux bien continuer a reflechir mais on pourrait simplifier le code de neo pour qu'il soit plus simple?
    0
  13. Utilisateur anonyme
     
    C'est ton choix, mais je ne t'aiderais pas dans cette voie
    0
Précédent
  • 1
  • 2
  • 3