zoukankan      html  css  js  c++  java
  • python -Json模块dumps、loads、dump、load

    1、json.dumps()

             json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数。

    import json
     
    name_emb = {'a':'1111','b':'2222','c':'3333','d':'4444'} 
    jsObj = json.dumps(name_emb)    
    print(name_emb)
    #{'a': '1111', 'c': '3333', 'b': '2222', 'd': '4444'}
    print(jsObj) #{"a": "1111", "c": "3333", "b": "2222", "d": "4444"} print(type(name_emb))
    #<type 'dict'>
    print(type(jsObj)
    #<type 'str'>
    如果dict不进行dumps(),以dict object形式写入文件,会报错 type error,expect a string
    import json  
      
    name_emb = {'a':'1111','b':'2222','c':'3333','d':'4444'}  
              
    emb_filename = ('/home/cqh/faceData/emb_json.json')  
      
    # jsObj = json.dumps(name_emb)    
      
    with open(emb_filename, "w") as f:  
        f.write(name_emb)  
        f.close() 

     2、json.loads()

              json.loads()用于将json格式的str类型的数据转成dict。与dumps()相反。

       json格式的字符串是双引号格式,变成dict是单引号

     3、json.dump()

             json.dump()用于将dict类型的数据转成str,并写入到json文件中。下面两种方法都可以将数据写入json文件

    import json  
      
    name_emb = {'a':'1111','b':'2222','c':'3333','d':'4444'}  
              
    emb_filename = ('/home/cqh/faceData/emb_json.json')  
     
    # solution 1
    jsObj = json.dumps(name_emb)    
    with open(emb_filename, "w") as f:  
        f.write(jsObj)  
        f.close()  
        
    # solution 2   
    json.dump(name_emb, open(emb_filename, "w"))
    

      4、json.load()

              json.load()用于从json文件中读取数据。

    import json  
    emb_filename = ('/home/cqh/faceData/emb_json.json')  
    jsObj = json.load(open(emb_filename))    
    print(jsObj)
    print(type(jsObj))
    1. {u'a': u'1111', u'c': u'3333', u'b': u'2222', u'd': u'4444'}
    2.  <type 'dict'>

    总结:

    str= json.dumps(dict), 把python的对象dict ,转换成str格式的json,双引号

    dict= json.loads( str ),把str格式的json(双引号), 变成python的dict(单引号)

    json.dump(dict, strfile ),把python的对象dict 保存成文件,内容是json 字符串(双引号)

    dict=json.load( strfile ),返回的是python的object dict

    参考:https://blog.csdn.net/mr_evanchen/article/details/77879967

  • 相关阅读:
    廖大python实战项目第六天
    廖大python实战教程第七天
    廖大python实战项目第五天
    Map的遍历方法及字符计数
    事务详解
    java设计模式详解
    程序员常见一些英文缩写
    Hibernate小笔记
    Myeclipse有关的问题
    hibernate对象的三种状态及转换
  • 原文地址:https://www.cnblogs.com/lxgbky/p/12957346.html
Copyright © 2011-2022 走看看