zoukankan      html  css  js  c++  java
  • Python json用法--dumps与loads dump与load

    dumps与loads

    相同点

    都是在内存中转换

    不同点
    • dumps

      把特定的对象序列化处理为字符串,即把dict或list转换为str

    • loads把字符串通过反序列化转换成list和dict

      注意:如果外形不是list或者dict的形状,则不会转换成功的,这里必须要注意,字符串的外面的引号必须是“单引号”,内部必须是双引号,如果不是这样 ,json模块会报错的

    dump与load

    相同点

    都是在文件中处理

    不同点
    • dump

      dump是把序列化后的字符串写到一个文件中

    • load

      load是从一个一个文件中读取文件

    代码示例

    import json,pytest
    
    
    #将dict或list转化成string
    def test_dumps():
        dict={'k1':'v1'}
        dumps_sth=json.dumps(dict)
        assert (type(dumps_sth)) == str
    
    
    #将string转换成dict或list
    def test_loads():
        str='{"k1": "v1"}'
        loads_sth=json.loads(str)
        assert type(loads_sth) == dict
    
    
    #往json文件写入内容
    def test_dump():
        file_path=r"E:	estdata	est.json.py"
        sth={'age':18}
        json.dump(sth,open(file_path,'w'))
        json_object = json.load(open(file_path,'r'))
        return json_object
        assert type(file_path) == dict
        #无法追加内容,会把之前的json文件内容覆盖
    
    #读取json文件
    def test_load():
        file_path=r"E:	estdata	est.json.py"
        with open(file_path,encoding='utf-8') as f:
            json_object = json.load(f,encoding='utf-8')
            return json_object
        assert type(file_path) == dict
  • 相关阅读:
    转载:.NET Web开发技术简单整理
    我眼中的Java架构师
    使用命令行写一个 Java Servlet
    不用注入方式使用Spring管理的对象中的方法,神奇
    部署java项目日志乱码求解!!!
    Java后台解决跨域问题
    发送ajax请求时候注意的问题
    简单的调用阿里云的短信接口
    jmeter测试
    springboot集成mongo
  • 原文地址:https://www.cnblogs.com/echoqi/p/10672906.html
Copyright © 2011-2022 走看看