json.dumps()、json.dump()、json.loads()和json.dumps()的区别

json.dumps()、json.dump()、json.loads()和json.dumps()的区别

        json.dumps()用于将字典形式的数据转化为字符串

        json.loads()用于将字符串形式的数据转化为字典

简单理解:

1、json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)
  (1)json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)
  (2)json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

2、json.dump()和json.load()主要用来读写json文件函数

示例代码:

json.dumps()函数的使用,将字典转化为字符串

import json

dict1 = {'A': 'a', 'B': 'b'}
dict2 = {"A": "a", "B": "b"}
print(dict1)
print(dict2)  #  字典打印的效果为单引号
# json.dumps()函数的使用,将字典转化为字符串
json_str = json.dumps(dict1)
print(type(dict1))
print(type(json_str))
print(json_str)

运行结果:

{'A': 'a', 'B': 'b'}
{'A': 'a', 'B': 'b'}


{"A": "a", "B": "b"}

json.loads函数的使用,将字符串转化为字典

import json

dict1 = {'A': 'a', 'B': 'b'}
# json.dumps()函数的使用,将字典转化为字符串
json_str = json.dumps(dict1)
# json.loads函数的使用,将字符串转化为字典
json_dict = json.loads(json_str)
print(type(json_str))
print(type(json_dict))
print(json_dict)

运行结果:



{'A': 'a', 'B': 'b'}

如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到json.dump(),

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

import json

dict1 = {'A': 'a', 'B': 'b'}
# json.dumps()函数的使用,将字典转化为字符串
json_str = json.dumps(dict1)
# json.dump()函数的使用,将json信息写进文件
# with open('json_str.json', 'a', encoding='utf-8') as f:
#     f.write(json_str)
file_w = open('json_str.json', 'w', encoding='utf-8')
json.dump(json_str, file_w)
file_w.close()
# json.load()函数的使用,将读取json信息
file_r = open('json_str.json', 'r', encoding='utf-8')
data = json.load(file_r)
print(data)

运行结果:

{"A": "a", "B": "b"}

 

你可能感兴趣的:(python,python,json)