zoukankan      html  css  js  c++  java
  • json.dumps与json.dump的区别 json.loads与json.load的区别(简洁易懂)

    json.dumps是将一个Python数据类型列表进行json格式的编码解析,
    示例如下:

    >>> import json #导入python 中的json模块
    >>> l = [‘iplaypython’,[1,2,3], {‘name’:’xiaoming’}] #创建一个l列表
    >>> encoded_json = json.dumps(l) # 将l列表,进行json格式化编码
    >>> print repr(l)
    >>> print encoded_json #输出结果
    

    这样我们就将一个list列表对象,进行了json格式的编码转换。

    解码python json格式,可以用这个模块的json.loads()函数的解析方法,
    示例如下:

    >>> decode_json = json.loads(encoded_json)
    >>> print type(decode_json) #查看一下解码后的对象类型
    >>> print decode_json #输出结果
    

    将python json格式解码成Python数据风格

    json.dump和json.dumps很不同,json.dump主要用来json文件读写,和json.load函数配合使用。
    json.dump(x,f),x是对象,f是一个文件对象,这个方法可以将json字符串写入到文本文件中。

    import json
    data = [{"a":"aaa","b":"bbb","c":[1,2,3,(4,5,6)]},33,'tantengvip',True]
    data2 = json.dumps(data)
    print(data2)
    f = open('./tt.txt','a')
    json.dump(data2,f)
    

    这样就生成了一个tt.txt文件,保存了json格式的数据。dumps还提供pritty print,格式化的输出。

    json.load加载json格式文件 下面是从txt文件中读取了json数据。

    f = open('./tt.txt','r')
    hehe = json.load(f)
    print(hehe)

    如果你要处理的是文件而不是字符串,你可以使用json.dump()和json.load()来编码和解码JSON数据。例如:

    # Writing JSON data
    with open('data.json', 'w') as f:
        json.dump(data, f)
    
    # Reading data back
    with open('data.json', 'r') as f:
        data = json.load(f)

    总结:
    1、json.dumps : dict转成str

    2、json.dump是将python数据保存成json

    3、json.load是将文件中的json数据读取出来


    作者:周倜吉
    链接:https://www.jianshu.com/p/81806a9bcbba
    來源:简书
  • 相关阅读:
    Golang 读写文件的操作
    初始 Elasticsearch
    数据存储单位的换算(bytes、KB MB GB TB PB EB ZB YB DB NB)
    Go 语言类型元信息的通用结构 _type
    空接口
    HashMap和Hashtable的区别
    谈谈final, finally, finalize的区别
    理解AOP
    Struts2 OGNL概述
    Struts2原理
  • 原文地址:https://www.cnblogs.com/tianyiliang/p/8192742.html
Copyright © 2011-2022 走看看