Json序列化和反序列化模块dumps、dump、loads、load功能介绍

Json的序列化和反序列化:

序列化: 将Python对象转换为Json字符串 - - - > dumps和dump
反序列化: 将Json字符串转换为Python对象 - - - > loads和load

序列化和反序列功能介绍:
序列化:将Python对象转换为Json对象

  • dumps----- 将Python对象转换为Json字符串
dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)
  • dump ----- 将Python对象转换为Json字符串并存储到文件中
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对象格式化并存储到文件对象中,文件必须为可写的文件句柄,json只产生str对象,不支持bytes对象,所以fp.write()必须支持str输入

  • skipkeys如果为True,对象的基本类型必须是str,int,float,bool,None
  • ensure_ascii=True,如果为true则所以传入的非ASCII字符都被转义,如果为false则字符将原样输出
  • check_circular=True,如果为true容器类型的循环引用检查将被跳过
  • indent=None,表示数组元素和对象将按指定的值缩进,可以是整数或字符串如’\t’
  • sort_keys=False,如果为True字典的输出将按键排序

反序列化:将Json字符串转换为Python对象

  • loads ----- > 将Json字符串转换为Python对象
loads(s, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)

# Deserialize ``s`` (a ``str``, ``bytes`` or ``bytearray`` instance containing a JSON document) to a Python object.
  • load ----- >读取指定文件中的json字符串并转换为Python对象
load(fp, *, cls=None, object_hook=None, parse_float=None,
        parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):
       # Deserialize ``fp`` (a ``.read()``-supporting file-like object containing a JSON document) to a Python object.

Json与Python之间数据类型的对应关系

  1. Python转Json
    在这里插入图片描述
  2. Json转Python
    在这里插入图片描述
    python 中str类型到JSON中转为unicode类型,None转为null,dict对应object;pyhton中的集合不能转成json格式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值