Problème avec pickle

Résolu
Pr.Witherfire Messages postés 84 Statut Membre -  
Pr.Witherfire Messages postés 84 Statut Membre -

Bonjour,

J'aurais voulu utiliser pickle en python.

Problème : J'ai cru comprendre qu'il faillait que le document .txt soit dans le repertoire courant. N'est-il pas possible de le mettre dans le dossier qu'on veut ?

Merci


Que Notch soit avec vous

2 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     

    Bonjour,

    Un fichier pickle est une manière de sauvegarder un objet python en mémoire dans un fichier binaire (donc : pas texte) dont le chemin est arbitraire (dans le dossier courant ou n'importe quel autre dossier).

    L'exemple ci-dessous met en évidence comment utiliser le module pickle. Ici mon fichier pickle correspond à /tmp/titi/tutu/toto.pkl ce qui a du sens sous Linux ou MacOS mais pas sous Windows. Donc si tu es sous Windows, choisis un autre chemin (par exemple c:\\Users\\toto).

    import pickle
    import pathlib
    
    d1 = {"a" : 1, "b": 2}
    print("d1 =", d1)
    
    # Create "/tmp/titi/tutu" folder
    folder = pathlib.Path("/tmp/titi/tutu")
    folder.mkdir(parents=True, exist_ok=True)
    
    # Define pickle filename
    filename = folder / "toto.pkl"
    
    # Save d to "/tmp/titi/tutu/toto.pkl"
    with open(filename, "wb") as f_out:
        pickle.dump(d1, f_out)
    
    # Load d2 from "/tmp/titi/tutu/toto.pkl"
    with open(filename, "rb") as f_in:
        d2 = pickle.load(f_in)
    
    print("d2 =", d2)

    Résultat :

    d1 = {'a': 1, 'b': 2}
    d2 = {'a': 1, 'b': 2}

    Bonne chance

    0
  2. Pr.Witherfire Messages postés 84 Statut Membre
     

    Ok merci beaucoup ça me sauve ;)


    0