JSON的四个函数

作者: 暖A暖 | 来源:发表于2019-08-05 16:24 被阅读27次

    JSON,即JavaScript Object Notation,是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。

    json.dumps():将 Python对象转换编码成JSON字符串

    dumps()函数语法如下:

    json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)

    • skipkeys:默认值是False,如果dict的keys内的数据不是python的基本类型,设置为False时,就会报TypeError的错误。此时设置成True,则会跳过这类key 。

    • ensure_ascii:为True的时候,所有非ASCII码字符显示为\uXXXX序列,只需在dump时将ensure_ascii设置为False即可,此时存入json的中文即可正常显示。

    • check_circular:如果为false,则将跳过容器类型的循环引用检查,循环引用将导致溢出错误。

    • allow_nan:如果为为false,那么严格按照JSON规范序列化超出范围的浮点值将是一个valueerror,而不是使用JavaScript等效值。

    • indent:根据数据格式缩进显示,读起来更加清晰,indent的数值,代表缩进的位数。

    • separators:更改默认分隔符,美化输出结果。

    • sort_keys:将数据根据keys的值进行排序。

    实例:如下所示,将python对象转为json格式

    import json
    
    data = {
      "name": "Mark",
      "sex": "man",
      "age": 36
    }
    data_json = json.dumps(data)
    
    print(data_json)
    
    # {"name": "Mark", "sex": "man", "age": 36}
    

    json.load():从文件中读取json字符串

    实例:如下所示,从test.json文件中读取数据

    import json
    f = open('test.json', 'r', encoding='utf-8')
    print(json.load(f))
    
    # {'name': 'Mark', 'sex': 'man', 'age': 36}
    

    json.loads():用于解码 JSON 数据,返回 Python 字段的数据类型

    loads()函数语法如下:

    json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

    实例:如下所示,将JSON数据转为Python对象

    import json
    data = '{"name":"Mark", "sex":"man", "age":36}'
    result = json.loads(data)
    print(result)
    # {'name': 'Mark', 'sex': 'man', 'age': 36}
    
    print(result["name"])
    # Mark
    

    json.dump():将json格式字符串写到文件中

    实例:如下所示,将content数据写入test.json文件中

    import json
    content = '{"name":"Tom", "sex":"man", "age":36}'
    f = open('test.json', 'w', encoding='utf-8')
    json.dump(content, f)
    
    • test.json文件内容如下所示:
    "{\"name\":\"Tom\", \"sex\":\"man\", \"age\":36}"
    

    Python 编码为 JSON 类型转换对照表

    Python JSON
    dict Object
    list Array
    tuple Array
    str String
    int Number
    float Number
    True true
    False false
    None null

    相关文章

      网友评论

        本文标题:JSON的四个函数

        本文链接:https://www.haomeiwen.com/subject/trvmdctx.html