序列化模块

序列化

  把其他类型的数据类型   转换成  字符串和bytes类型  就是序列化的过程

json模块

  json是所有语言都通用序列化格式,,json在Pytho上序列化了,在其他语言也可以反序列化

  能够处理的数据类型非常有限 : 字符串,列表,字典,数字

                其中,数字会强制转换成字符串,字典的key只能是字符串 

  dumps loads
      在内存中做数据转换 :
      dumps 数据类型 转成 字符串 序列化
         loads 字符串 转成 数据类型 反序列化

向文件中记录字典
dic={'liu':123,'amber':456}
import json
with open('haha',mode='a',encoding='utf-8')as f:
    s=json.dumps(dic)
    f.write(s)
从文件中读取字典
with open('haha',mode='r',encoding='utf-8')as f:
    s=f.read()
    dic=json.loads(s)
    print(dic)

   dump load
      直接将数据类型写入文件,直接从文件中读出数据类型
      dump 数据类型 写入 文件 序列化
      load 文件 读出 数据类型 反序列化

  向文件中记录字典
dic={'liu':123,'amber':456}
with open('haha',mode='w',encoding='utf-8')as f:
    json.dump(dic,f)
  从文件中读取字典
with open('haha',mode='r',encoding='utf-8')as f:
    dic=json.load(f)
    print(dic)  

pickle模块  

   支持Python中几乎所有的数据类型,只能在Python中使用

   序列化的结果只能是字节,在和文件操作的时候需要wb和rb模式打开

   可以多次dump和多次load

  方法同json

  dumps/loads  字符串<--->其他数据类型

  dump/load       文件  <--->数据类型

 

 

 

posted @ 2018-08-22 21:59  amberLIU  阅读(148)  评论(0)    收藏  举报