標籤:nal 序列 UI tomat method which present 模組 丟失
1 import pickle 2 3 # 在python中如果我們有一些對象需要持久性儲存,並且不丟失我們這個對象的類型與資料, 4 # 我們則需要將這些對象進行序列化,序列化後,需要使用的時候,我們在回複為原來的資料, 5 # 序列化的這種過程,我們將其稱為pickle(醃制) 6 7 8 # 1、dumps(object) python對象 --> 字串 9 list_a = ["mingyue", "jishi", "you"] 10 list_b = pickle.dumps(list_a) 11 print(list_b) 12 13 14 # 2、loads(string) 字串 --> python對象 15 list_c = pickle.loads(list_b) 16 print(list_c) 17 18 19 # 3、dump(object, file) python對象 --> 檔案 20 group1 = ("baidu", "wen", "qingtian") 21 f1 = open("1.pk1", "wb") 22 pickle.dump(group1, f1, True) 23 f1.close() 24 25 # 4、load(object, file) 檔案 --> python對象 26 f2 = open("1.pk1", "rb") 27 t = pickle.load(f2) 28 print(t) 29 f2.close() 30 31 """ 32 dump(obj, file, protocol=None, *, fix_imports=True) 33 Write a pickled representation of obj to the open file object file. 34 35 This is equivalent to ``Pickler(file, protocol).dump(obj)``, but may 36 be more efficient. 37 38 The optional *protocol* argument tells the pickler to use the given 39 protocol supported protocols are 0, 1, 2, 3 and 4. The default 40 protocol is 3; a backward-incompatible protocol designed for Python 3. 41 42 Specifying a negative protocol version selects the highest protocol 43 version supported. The higher the protocol used, the more recent the 44 version of Python needed to read the pickle produced. 45 46 The *file* argument must have a write() method that accepts a single 47 bytes argument. It can thus be a file object opened for binary 48 writing, an io.BytesIO instance, or any other custom object that meets 49 this interface. 50 51 If *fix_imports* is True and protocol is less than 3, pickle will try 52 to map the new Python 3 names to the old module names used in Python 53 2, so that the pickle data stream is readable with Python 2. 54 55 dumps(obj, protocol=None, *, fix_imports=True) 56 Return the pickled representation of the object as a bytes object. 57 58 The optional *protocol* argument tells the pickler to use the given 59 protocol; supported protocols are 0, 1, 2, 3 and 4. The default 60 protocol is 3; a backward-incompatible protocol designed for Python 3. 61 62 Specifying a negative protocol version selects the highest protocol 63 version supported. The higher the protocol used, the more recent the 64 version of Python needed to read the pickle produced. 65 66 If *fix_imports* is True and *protocol* is less than 3, pickle will 67 try to map the new Python 3 names to the old module names used in 68 Python 2, so that the pickle data stream is readable with Python 2. 69 70 load(file, *, fix_imports=True, encoding=‘ASCII‘, errors=‘strict‘) 71 Read and return an object from the pickle data stored in a file. 72 73 This is equivalent to ``Unpickler(file).load()``, but may be more 74 efficient. 75 76 The protocol version of the pickle is detected automatically, so no 77 protocol argument is needed. Bytes past the pickled object‘s 78 representation are ignored. 79 80 The argument *file* must have two methods, a read() method that takes 81 an integer argument, and a readline() method that requires no 82 arguments. Both methods should return bytes. Thus *file* can be a 83 binary file object opened for reading, an io.BytesIO object, or any 84 other custom object that meets this interface. 85 86 Optional keyword arguments are *fix_imports*, *encoding* and *errors*, 87 which are used to control compatibility support for pickle stream 88 generated by Python 2. If *fix_imports* is True, pickle will try to 89 map the old Python 2 names to the new names used in Python 3. The 90 *encoding* and *errors* tell pickle how to decode 8-bit string 91 instances pickled by Python 2; these default to ‘ASCII‘ and ‘strict‘, 92 respectively. The *encoding* can be ‘bytes‘ to read these 8-bit 93 string instances as bytes objects. 94 95 loads(data, *, fix_imports=True, encoding=‘ASCII‘, errors=‘strict‘) 96 Read and return an object from the given pickle data. 97 98 The protocol version of the pickle is detected automatically, so no 99 protocol argument is needed. Bytes past the pickled object‘s100 representation are ignored.101 102 Optional keyword arguments are *fix_imports*, *encoding* and *errors*,103 which are used to control compatibility support for pickle stream104 generated by Python 2. If *fix_imports* is True, pickle will try to105 map the old Python 2 names to the new names used in Python 3. The106 *encoding* and *errors* tell pickle how to decode 8-bit string107 instances pickled by Python 2; these default to ‘ASCII‘ and ‘strict‘,108 respectively. The *encoding* can be ‘bytes‘ to read these 8-bit109 string instances as bytes objects.110 """
python pickle模組