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:\testdata\test.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:\testdata\test.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

猜你喜欢

转载自www.cnblogs.com/echoqi/p/10672906.html
今日推荐