美文网首页
Python json 模块dumps、dump、loads、l

Python json 模块dumps、dump、loads、l

作者: 致Great | 来源:发表于2018-08-02 12:02 被阅读185次

本文主要讲下json.dumps和json.dump、json.loads和json.load的区别,因为经常需要加载json文件,读取数据,傻傻分不清...

json.dumps

json.dumps将python对象格式化成json字符

str={'article':'中华人民共和国共和国万岁','tag':'中国共产党万岁'}
# 将python对象格式化成json字符串
encoded_json=json.dumps(str,ensure_ascii=False)
print(encoded_json,type(encoded_json))

输出如下:

{"article": "中华人民共和国共和国万岁", "tag": "中国共产党万岁"} <class 'str'>

json.loads

json.loads将json字符串解码成python对象

# 将json字符串解码成python对象
decode_json=json.loads(encoded_json)
print(decode_json,type(decode_json))

输出如下:

{'article': '中华人民共和国共和国万岁', 'tag': '中国共产党万岁'} <class 'dict'>

json.dump

json.dump主要用来将python对象写入json文件

# json.dump主要用来将python对象写入json文件
f = open('demo.json','w',encoding='utf-8')
json.dump(decode_json,f,ensure_ascii=False)
f.close()

结果如下:


json.load

json.load加载json格式文件,返回python对象

# json.load加载json格式文件,返回python对象
f = open('demo.json','r',encoding='utf-8')
data = json.load(f)
print(data,type(data))
f.close()

输入如下:

{'article': '中华人民共和国共和国万岁', 'tag': '中国共产党万岁'} <class 'dict'>

完整代码

import json

str={'article':'中华人民共和国共和国万岁','tag':'中国共产党万岁'}
# 将python对象格式化成json字符串
encoded_json=json.dumps(str,ensure_ascii=False)
print(encoded_json,type(encoded_json))

# 将json字符串解码成python对象
decode_json=json.loads(encoded_json)
print(decode_json,type(decode_json))

# json.dump主要用来将python对象写入json文件
f = open('demo.json','w',encoding='utf-8')
json.dump(decode_json,f,ensure_ascii=False)
f.close()

# json.load加载json格式文件,返回python对象
f = open('demo.json','r',encoding='utf-8')
data = json.load(f)
print(data,type(data))
f.close()

相关文章

网友评论

      本文标题:Python json 模块dumps、dump、loads、l

      本文链接:https://www.haomeiwen.com/subject/cjujvftx.html