python.pickle()

模块 pickle

实现了对一个 Python 对象结构的二进制序列化和反序列化,

将数据对象以二进制的形式进行保存

pickle.dump(obj, file, protocol=None, *, fix_imports=True, buffer_callback=None)
将对象 obj 封存以后的对象写入已打开的 file object file。

import numpy as np
import pickle
dic = np.arange(200).reshape(4,50)
pickle.dump(dic,open("./test.pkl",'wb'))

pickle.dumps(obj, protocol=None, *, fix_imports=True, buffer_callback=None)

lst = {
    
    "name":"Tom","age":10}
print(pickle.dumps(lst))
 # b'\x80\x04\x95\x1a\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x04name\x94\x8c\x03Tom\x94\x8c\x03age\x94K\nu.'

# 

pickle.load(file, *, fix_imports=True, encoding=“ASCII”, errors=“strict”, buffers=None)
从已打开的 file object 文件 中读取封存后的对象,重建其中特定对象的层次结构并返回。

import numpy as np
import pickle
dic = np.arange(200).reshape(4,50)
pickle.dump(dic,open("./test.pkl",'wb'))
d = pickle.load(open("./test.pkl",'rb'))
print(d)

pickle.loads(data, *, fix_imports=True, encoding=“ASCII”, errors=“strict”, buffers=None)
重建并返回一个对象的封存表示形式 data 的对象层级结构。 data 必须为 bytes-like object。

lst = {
    
    "name":"Tom","age":10}
lst_b = pickle.dumps(lst)
print(lst_b)
lst_s = pickle.loads(lst_b)
print(lst_s)

b'\x80\x04\x95\x1a\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x04name\x94\x8c\x03Tom\x94\x8c\x03age\x94K\nu.'
{
    
    'name': 'Tom', 'age': 10}

猜你喜欢

转载自blog.csdn.net/qq_52007481/article/details/123306638