IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python教程:Json模块中dumps、dump、loads、load函数用法讲解 -> 正文阅读

[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数据。

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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)
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-04-04 12:06:36  更:2022-04-04 12:07:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 20:27:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码