Python Json数据解析

本篇主要介绍Python 中json数据如何解析、转化、保存和加载。

目录

Json数据解析

概念

作用

Json文件组成

Json转化为Python数据类型

Python数据类型转化为json

写入本地json文件

读取本地的json文件

总结


Json数据解析

概念

一种保存数据的格式

作用

可以保存本地的json文件,也可以将json串进行传输,通常将json称为轻量级的传输方式。

Json文件组成

{} 代表对象(字典)

\] 代表列表 : 代表键值对 , 分隔为两个部分 #### **Json转化为Python数据类型** 将json格式的字符串转化为python数据类型的对象 示例如下: ```python jstr = '{"name": "zhangsan", "gender": "nan", "hobby": ["乒乓球", "篮球", "羽毛球"], "param": {"a": "b"}}' pdata = json.loads(jstr) print(pdata) print(type(pdata)) print(pdata['hobby']) ``` 执行结果: ```bash {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a': 'b'}} ['乒乓球', '篮球', '羽毛球'] ``` #### **Python数据类型转化为json** 将python数据类型的数据转化为json字符串。 示例如下: ```python import json pdata = {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a':'b'}} jstr = json.dumps(pdata) print(jstr) print(type(jstr)) ``` 执行结果: ```bash {"name": "zhangsan", "gender": "nan", "hobby": ["\u4e52\u4e53\u7403", "\u7bee\u7403", "\u7fbd\u6bdb\u7403"], "param": {"a": "b"}} ``` #### **写入本地json文件** 写入的路径可以是绝对路径也可以是相对路径,示例使用的是相对路径。 示例如下: ```python path = './local.json' jsonData1 = {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a':'b'}} with open(path, 'w') as f: json.dump(jsonData1, f) ``` #### **读取本地的json文件** 读取刚才写入的本地json文件。 示例如下: ```python path1 = './local.json' with open(path1, 'rb') as f: data = json.load(f) print(data) print(type(data)) ``` 执行结果: ```bash {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a': 'b'}} ``` ### 总结 本篇主要介绍Python 中json数据如何解析、转化、保存和加载。

相关推荐
Java后端的Ai之路5 小时前
【Python 教程15】-Python和Web
python
Victor3566 小时前
https://editor.csdn.net/md/?articleId=139321571&spm=1011.2415.3001.9698
后端
冬奇Lab6 小时前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
Victor3566 小时前
Hibernate(89)如何在压力测试中使用Hibernate?
后端
剩下了什么7 小时前
MySQL JSON_SET() 函数
数据库·mysql·json
灰子学技术8 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰8 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码8 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Gogo8169 小时前
BigInt 与 Number 的爱恨情仇,为何大佬都劝你“能用 Number 就别用 BigInt”?
后端
fuquxiaoguang9 小时前
深入浅出:使用MDC构建SpringBoot全链路请求追踪系统
java·spring boot·后端·调用链分析