python中的Json模块dumps、dump、loads、load函数用法详解
作者:Python热爱者 时间:2023-11-09 20:01:30
json的作用
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式
json.dumps(): 对数据进行编码,把python对象转换为字符串数据
json.loads(): 对数据进行解码,把json的字符串转换为python对象
python中的Json模块dumps、dump、loads、load函数用法详解
1、json.dumps()和loads()
json.dumps()将dict类型数据转成str。
json.loads()刚好相反,将str类型的数据转成dict。
import json
data= {'a':'1111','b':'2222','c':'3333','d':'4444'}
filename = r"d:\1.json"
# 使用dumps()
str_data = json.dumps(data)
print(str_data) #输出{"a": "1111", "b": "2222", "c": "3333", "d": "4444"}
# 使用loads()
dict_data = json.loads(str_data)
print(dict_data) #输出{'a': '1111', 'b': '2222', 'c': '3333', 'd': '4444'}
2、json.dump()和json.load()
json.dump主要用来文件写入,json.load主要用来文件读取。但是只能写入读取一条数据,多条会报错。
json.dump(x,f),x是对象,f是一个文件对象,这个方法可以将json字符串写入到文件中。
json.load(f),f是一个文件对象,这个方法可以从文件中读取json数据。
import json
data = {'a':'1111','b':'2222','c':'3333','d':'4444'}
filename = r"d:\1.json"
# 使用dump()写入一行数据
with open(filename, "w") as f:
json.dump(data,f)
# 使用load()读取一行数据
with open(filename, 'r') as f:
jsObj = json.load(f)
for key in jsObj.keys():
print('key: %s value: %s' % (key,jsObj.get(key)))
输出:
key: a value: 1111
key: b value: 2222
key: c value: 3333
key: d value: 4444
3、如何读取写入多行数据呢?
import json
filename = r"d:\1.json"
data = [{'a':'1111','b':'2222','c':'3333','d':'4444'},
{'e':'1111','f':'2222','g':'3333','h':'4444'},
{'i':'1111','j':'2222','k':'3333','l':'4444'},
{'m':'1111','n':'2222','o':'3333','p':'4444'}]
#写入多行数据到文件
with open(filename,'w') as f:
for i in range(len(data)):
f.write(json.dumps(data[i])+'\n') #一定要换行
#从文件读取多行数据,并转化为list
with open(filename,'r') as f:
jsObj=[json.loads(line) for line in f]
print(jsObj)
来源:https://blog.csdn.net/qdPython/article/details/123923738
标签:python,json,dumps,dump,loads,load
0
投稿
猜你喜欢
Python3多线程处理爬虫的实战
2023-08-16 02:16:21
asp随机获取access数据库中的一条记录
2007-08-15 13:11:00
Python pandas处理缺失值方法详解(dropna、drop、fillna)
2023-04-03 03:45:36
基于Python3.6+splinter实现自动抢火车票
2021-04-27 21:58:15
Study jQuery in a Simplified Way
2010-01-30 12:55:00
Python类中的装饰器在当前类中的声明与调用详解
2021-03-07 10:29:35
Pygame Draw绘图函数的具体使用
2021-05-24 12:14:49
介绍使用WordPress时10个常用的MySQL查询
2024-01-16 07:33:36
详解Python3中setuptools、Pip安装教程
2023-12-30 11:49:40
go中import包的大坑解决方案
2024-05-09 09:55:14
vue.js 动态组件详解
2024-04-29 13:09:58
php设计模式之装饰模式应用案例详解
2023-11-14 13:37:20
Python文件读取的3种方法及路径转义
2021-12-27 03:48:28
4款Javascript放大镜特效脚本
2009-10-14 20:46:00
在win和Linux系统中python命令行运行的不同
2023-08-03 05:16:22
详解Oracle数据库各类控制语句的使用
2024-01-13 16:49:00
django框架F&Q 聚合与分组操作示例
2021-05-21 02:13:56
python线程池threadpool实现篇
2022-03-21 19:37:34
简析Python的闭包和装饰器
2021-06-25 03:25:40
vee-validate vue 2.0自定义表单验证的实例
2023-07-02 17:09:33