web-dev-qa-db-fra.com

Comment décaper une liste?

J'essaie de sauvegarder une liste, ne contenant que des chaînes, pour pouvoir y accéder plus tard. Quelqu'un m'a dit d'utiliser le décapage. J'espérais avoir un exemple et une certaine compréhension de ce qu'est le marinage.

40
Lewis

Pickling va sérialiser votre liste (la convertir et ses entrées en une chaîne d'octets unique), afin que vous puissiez l'enregistrer sur le disque. Vous pouvez également utiliser pickle pour récupérer votre liste d'origine, en chargeant à partir du fichier enregistré.

Donc, commencez par construire une liste, puis utilisez pickle.dump pour l'envoyer dans un fichier ...

Python 3.4.1 (default, May 21 2014, 12:39:51) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> mylist = ['I wish to complain about this parrot what I purchased not half an hour ago from this very boutique.', "Oh yes, the, uh, the Norwegian Blue...What's,uh...What's wrong with it?", "I'll tell you what's wrong with it, my lad. 'E's dead, that's what's wrong with it!", "No, no, 'e's uh,...he's resting."]
>>> 
>>> import pickle
>>> 
>>> with open('parrot.pkl', 'wb') as f:
...   pickle.dump(mylist, f)
... 
>>> 

Puis quittez et revenez plus tard… et ouvrez avec pickle.load...

Python 3.4.1 (default, May 21 2014, 12:39:51) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pickle
>>> with open('parrot.pkl', 'rb') as f:
...   mynewlist = pickle.load(f)
... 
>>> mynewlist
['I wish to complain about this parrot what I purchased not half an hour ago from this very boutique.', "Oh yes, the, uh, the Norwegian Blue...What's,uh...What's wrong with it?", "I'll tell you what's wrong with it, my lad. 'E's dead, that's what's wrong with it!", "No, no, 'e's uh,...he's resting."]
>>>
77
Mike McKerns