运维开发网
广告位招商联系QQ:123077622
 
广告位招商联系QQ:123077622

python进阶(3)json文件与python字典的转化

运维开发网 https://www.qedev.com 2021-04-28 09:36 出处:51CTO 作者:凯小杜
序列化与反序列化按照某种规则,把内存中的数据保存到文件中,文件是一个字节序列,所以必须要把内存数据转换成为字节序列,输出到文件,这就是序列化;反之,从文件的字节恢复到内存,就是反序列化; python中与json格式的文件,序列化与反序列化用到的是json模块 json模块dump 将编码结果保存到文件对象或流中load 从网络或者磁盘中读取json数据,对其中的json数据解码,返回python

序列化与反序列化

按照某种规则,把内存中的数据保存到文件中,文件是一个字节序列,所以必须要把内存数据转换成为字节序列,输出到文件,这就是序列化;反之,从文件的字节恢复到内存,就是反序列化;

 

python中与json格式的文件,序列化与反序列化用到的是json模块

 

json模块

  • dump 将编码结果保存到文件对象或流中
  • load 从网络或者磁盘中读取json数据,对其中的json数据解码,返回python数据
  • dumps 将编码的结果以字符串形式返回
  • loads 对其中的json数据进行解码,返回python数据
'''
序列化
'''
def dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True,
        allow_nan=True, cls=None, indent=None, separators=None,
        default=None, sort_keys=False, **kw):

  obj: 需要序列化的对象
  fp: 序列化到哪个文件中
  ensure_ascii:当为false时,写入fp的字符串可以包含非ascii字符,当你的obj中含有中文,必须加上ensure_ascii=False
  indent:当为正整数时,代表缩进格数,美化打印,一般为4
  sort_keys:如果为true,则字典将按键排序

'''
反序列化
'''
def load(fp, *, cls=None, object_hook=None, parse_float=None,
        parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消