zoukankan      html  css  js  c++  java
  • Python JSON

    JSON 函数

    使用 JSON 函数需要导入 json 库:import json。
    函数 描述
    json.dumps 将 Python 对象编码成 JSON 字符串
    json.loads 将已编码的 JSON 字符串解码为 Python 对象

    json.dumps

    json.dumps 用于将 Python 对象编码成 JSON 字符串。

    语法

    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)

    实例

    以下实例将数组编码为 JSON 格式数据:
    #!/usr/bin/python3
    import json
    
    data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
    
    json = json.dumps(data)
    print (json)

    以上代码执行结果为:

    [{"a": 1, "c": 3, "b": 2, "e": 5, "d": 4}]

    使用参数让 JSON 数据格式化输出:

    >>> import json
    >>> print json.dumps({'a': 'Runoob', 'b': 7}, sort_keys=True, indent=4, separators=(',', ': '))
    {
    "a": "Runoob",
    "b": 7
    }

    python 原始类型向 json 类型的转化对照表:

    Python JSON
    dict object
    list, tuple array
    str, unicode string
    int, long, float number
    True true
    False false
    None null

    json.dump

    json.dump()用于将 Python 对象编码成 JSON 字符串,把写入json文件中。
     
    语法
    dump (obj, fp, 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)

    实例

    import json
    name_emb = {"key1":"value1","key2":"value2"}
    emb_filename=r'E:learningautopythonemb_json.json'
    json.dump(name_emb,open(emb_filename,'w'))

    以上代码执行结果为:

    {"key1": "value1", "key2": "value2"}

    json.loads

    json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。

    语法

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

    实例

    以下实例展示了Python 如何解码 JSON 对象:
    #!/usr/bin/python3
    import json
    
    jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
    
    text = json.loads(jsonData)
    print (text)

    以上代码执行结果为:

    {u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}

    json 类型转换到 python 的类型对照表:

    JSON Python
    object dict
    array list
    string unicode
    number (int) int, long
    number (real) float
    true True
    false False
    null None
     

    json.load

    json.load()用于从json文件中读取数据。
     
    语法
    load (fp, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, 
    parse_constant=None, object_pairs_hook=None, **kw)

    实例

    import json
    emb_filename=r'E:learningautopythonemb_json.json'
    js_Obj = json.load(open(emb_filename,'r'))
    print(js_Obj)
    print(type(js_Obj))
    
    for key in js_Obj.keys():
        print('key:%s value: %s' %(key,js_Obj.get(key)))

    以上代码执行结果为:

    {'key1': 'value1', 'key2': 'value2'}
    <class 'dict'>
    key:key1 value: value1
    key:key2 value: value2
  • 相关阅读:
    如何编写优雅的代码:05. 设计模式(下)
    ArcGIS之Cartogram地图变形记
    GIS规划应用——基于哈夫模型的GIS服务区分析
    基于GIS的旅游辐射区人口统计
    图斑整理之字段计算器使用技巧
    ArcGIS制作放射状流向地图(Radial Flow Map)
    SQL Server时间粒度系列
    (原)SQL Server 代理作业执行持续时间简述
    (原)SQL Server 系统提供功能的三个疑惑
    sql server实现自定义分割月功能
  • 原文地址:https://www.cnblogs.com/huhu-xiaomaomi/p/10340853.html
Copyright © 2011-2022 走看看