Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur EOFError en utilisant pickle

Sujet résolu
    4 août 2010 à 18:02:16

    Bonjours tout le monde,

    J'aimerais bien stocké un objet dictionnaire dans un fichier pour le récupérer après, le seul problème est que lors de la récupération (load()) il me dit EOFError ...
    J'ai chercher un peu sur google et j'ai vu que cela voulait dire que python avait trouver une fin de fichier (ctrl+d) :euh:
    et mes donnée dans le dict sont des nombres ...

    Quelqu'un pour m'aider ?
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      4 août 2010 à 18:19:18

      Voici un exemple qui te fera comprendre.

      Il me semble, sans voir ton code que ce qui te manque c'est d'ouvrir ton fichier pour lecture.

      >>> import pickle
      >>> f=open('test.txt', 'w')
      >>> dico={1:"bonjour", 2:"coucou"}
      >>> pickle.dump(dico, f)
      >>> f.close()
      >>> f=open('test.txt', 'r')
      >>> pickle.load(f)
      {1: 'bonjour', 2: 'coucou'}
      >>> f.close()
      >>>


      • Partager sur Facebook
      • Partager sur Twitter
        4 août 2010 à 19:03:34

        Exact j'avais pas mit le code XD, déso.

        alors contrairement a ce que tu pensait ... j'ouvre bien le fichier comme ceci :
        with open('grille_sortie', 'rb') as fichier:
            try:
                Big_daddy_recup = pickle.Unpickler(fichier).load()
            except EOFError:
                print("Euh c'est pas encore la fin normalement ...")
                os.system("pause")
        

        et l'enregistre comme ceci :
        with open('grille_sortie',"wb") as fichier :
            mon_pickler = pickle.Pickler(fichier)
            mon_pickler.dump(Big_daddy)
        


        Et pour être plus précis j'enregistre un dictionnaire de dictionaire ...





        Ok c'est pas grave ..., il essayait de m'ouvrir un fichier vide ce qui générais cette erreur. j'executais une premiere fois le script où il m'écrivait dans le fichier puis une deuxième fois où il y avait une erreur (bête en plus, que je n'avais pas vue) ce qui effaçait ce qu'il y avais dans le fichier ... ^^
        • Partager sur Facebook
        • Partager sur Twitter

        Erreur EOFError en utilisant pickle

        × 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