Json 模块
全称‘JavaScript Object Notation’(JavaScrip对象表示法)它是一种基于文本,独立与语言的轻量级数据交换格式。以易于阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象(键值对)
Js官网 https://www.json.org/
语法规则
- 数据由键值对组成
- 键值对由逗号分离
- 大括号里保存对象
- 中括号里保存数组
目前互联网开发前后端数据交互使用的基本都是json
方法
python和js的类型区别
| Python | Json |
|---|---|
| 字典 dict | 对象class |
| 列表list或元组tuple | 数组 |
| 字符串str | 字符串 |
| 整型int和浮点float | 数字 |
| 布尔True和False | true或false |
| None | null |
JsonAPI
| json.dumps(obj) | 将python数据转化为json格式的数据 |
| json.loads(s) | 将json数据转化为python格式的数据 |
| json.dump(obj,fp) | 将python数据转化为json格式的数据并保存到文件中 |
| json.load(fp) | 从文件中读取json数据并转换为python格式的数据 |
使用前需要导包
import json
-
json.dumps(obj) 将python数据转化为json格式的数据
dict1 = {'name':'yuxuan','age':15,'sex':'男'} res1 = json.dumps(dict1) #res1为dict1转换为json数据后的结果 #indent 缩进显示 res1 = json.dumps(dict1,indent=2) #数据缩进两行显示,如下 res1 = { "name":"yuxuan", "age":15, "sex":"男" } #ensure_ascii 如果不加入ensure_ascii=False 中文数据会以ASCII显示 #所以最终写法如下 res1 = json.dumps(dict1,indent=2,ensure_ascii=False) -
json.loads(s) 将json数据转化为python格式的数据
# 将刚刚转换为json格式的res1转换为python格式数据 res2 = json.loads(res1) -
json.dump(obj,fp) 将python数据转化为json格式的数据并保存到文件中
#dump有两步操作 1 将python数据转换为json 2将json数据保存到文件中 with open('json.txt','w+') as f: json.dump(dict1,ensure_ascii=False,fp=f) #将字典dict1的数据转换为json格式,并写入到文件json.txt中 -
json.load(fp) 从文件中读取json数据并转换为python格式的数据
with open('json.txt','r+') as f: res3 = json.load(fp=f) #将json.txt文件中json的数据读取出来,然后转换为python字典格式,res3用来接受得到的python数据
本文深入解析JSON(JavaScript Object Notation)数据格式,介绍其语法规则、应用领域及Python中处理JSON数据的方法,包括dumps、loads、dump和load等API函数的使用。

被折叠的 条评论
为什么被折叠?



