Partage
  • Partager sur Facebook
  • Partager sur Twitter

Répertoire téléphonique dictionnaire

    21 février 2020 à 16:48:23

    Bonjour, je voudrais réaliser un répertoire téléphonique avec pour outil un dictionnaire de manière à ajouter le contenu du dictionnaire (nom + numéro) dans un fichier que l'on créé dans le même répertoire que le programme Python. C'est un exercice à blanc que je me donne vu que j'ai commencé le python il n'y a pas longtemps. Des idées? sachant que j'ai déjà commencé par ça :)

    def repertoire():
        dictionnaire = {}
        for c, v in dictionnaire.items():
            print(c, v)
    
        with open("repertoire.txt", "w") as fichier:
            print(fichier.read())
    
    
    dico = {"Nathalie": "06 06 06 06 06"}
    print(repertoire(dico))
    



    -
    Edité par JeanBon166 21 février 2020 à 17:05:23

    • Partager sur Facebook
    • Partager sur Twitter
      22 février 2020 à 23:25:47

      Salut,

      Désolé mais le fait que tu es débutant n'excuse pas les absurdités comme ne pas respecter l'appel de la fonction que tu as créée. Néanmoins, l'idée est bonne, ça manque juste de rigueur.

      Les absurdités que j'ai notées :

      appeler une fonction sans paramètre mais en lui mettant un argument ; utiliser le mode écriture de fichier mais utiliser une fonction de lecture.

      print() est une fonction qui affiche quelque chose à l'écran, ce n'est pas la panacée.

      • Partager sur Facebook
      • Partager sur Twitter
        23 février 2020 à 16:11:48

        En ayant lu un peu le pdf, je suis arrivé à ce programme qui me parait pas mal vous en pensez quoi?

        def repertoire(dico):
            dico = {"Jean ": " 06 52 45 12 36"}
            with open('repertoire.txt', 'w') as file:
                for nom, numero in dico.items():
                    file.write("{}:{}\n".format(nom, dico[nom]))
                    print(nom, numero)
            return
        
        
        repertoiredico = {}
        repertoire(repertoiredico)
        

        -
        Edité par JeanBon166 24 février 2020 à 12:37:19

        • Partager sur Facebook
        • Partager sur Twitter
          23 février 2020 à 19:30:47

          dictionnaire = {}
          for c, v in dictionnaire.items():
              print(c, v)

          Là tu te rends bien compte que pas grand chose ne va se passer car le dictionnaire est vide... Si oui alors pourquoi faire le test ?

          Dans le paramètre de ta fonction, tu sembles y placer un objet fichier, si c'est le cas, c'est qu'il a déjà été construit avec la méthode open, hors tu réutilises cette méthode de plus de la mauvaise manière ligne 6.

          Si fichier n'est pas un objet file de python, alors fichier est un terme mal choisi pour indiquer le nom du chemin où se trouve le fichier en paramètre de ta fonction, et là encore, ligne 6, la manière utilisée pour avoir l'objet file ne serait pas la bonne.

          Peux-tu prendre un tutoriel et le lire ? De cette manière tu pourras y voir les incohérences de ton code.

          EDIT: J'avais pas vu, mais on pourrait s'attendre à ce que tu envoies en paramètre de ta fonction une chaîne pour le chemin du répertoire ou un objet file déjà créé, mais toi tu y ajoutes un objet dict donc un dictionnaire, là tu es carrément dans le flou artistique.

          -
          Edité par fred1599 23 février 2020 à 19:33:36

          • Partager sur Facebook
          • Partager sur Twitter

          Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
          La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

            23 février 2020 à 20:37:06

            En effet reprendre un tutoriel peut être une bonne idée pour remettre les choses à plat.

            Un bon cours souvent référencé ici : https://inforef.be/swi/python.htm (lien direct vers le pdf : https://inforef.be/swi/download/apprendre_python3_5.pdf ).

            EDIT : Je suis toujours curieux de savoir quel cours ont suivi les débutants qui ont des difficultés, la plupart du temps j'ai pas de réponse, mais je continue quand même à poser la question...

            -
            Edité par LoupSolitaire 23 février 2020 à 20:38:18

            • Partager sur Facebook
            • Partager sur Twitter

            Blond, bouclé, toujours le sourire aux lèvres...

              24 février 2020 à 10:40:13

              LoupSolitaire a écrit:

              En effet reprendre un tutoriel peut être une bonne idée pour remettre les choses à plat.

              Un bon cours souvent référencé ici : https://inforef.be/swi/python.htm (lien direct vers le pdf : https://inforef.be/swi/download/apprendre_python3_5.pdf ).

              EDIT : Je suis toujours curieux de savoir quel cours ont suivi les débutants qui ont des difficultés, la plupart du temps j'ai pas de réponse, mais je continue quand même à poser la question...

              -
              Edité par LoupSolitaire il y a environ 13 heures

              J'ai commencé à prendre des cours particuliers en Python avec un prof pour m'avancer sur le programme mais il explique très mal, je vais le changer :/

              • Partager sur Facebook
              • Partager sur Twitter
                7 mars 2020 à 16:38:28

                Salut,

                C'est très bien de prendre un prof perso, pour faire tourner l'économie. Cependant, tu devrais commencer seul par le pdf proposé par LS quitte à prendre un prof si tu as besoin d'accélérer ta formation.

                • Partager sur Facebook
                • Partager sur Twitter
                  10 mars 2020 à 12:30:59

                  C'est toujours la faute du prof ...
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Répertoire téléphonique dictionnaire

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown