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数据如何解析、转化、保存和加载。

相关推荐
一只叫煤球的猫8 小时前
写代码很6,面试秒变菜鸟?不卖课,面试官视角走心探讨
前端·后端·面试
bobz9658 小时前
tcp/ip 中的多路复用
后端
bobz9658 小时前
tls ingress 简单记录
后端
你的人类朋友9 小时前
什么是OpenSSL
后端·安全·程序员
bobz96510 小时前
mcp 直接操作浏览器
后端
前端小张同学12 小时前
服务器部署 gitlab 占用空间太大怎么办,优化思路。
后端
databook12 小时前
Manim实现闪光轨迹特效
后端·python·动效
武子康13 小时前
大数据-98 Spark 从 DStream 到 Structured Streaming:Spark 实时计算的演进
大数据·后端·spark
该用户已不存在13 小时前
6个值得收藏的.NET ORM 框架
前端·后端·.net
文心快码BaiduComate13 小时前
文心快码入选2025服贸会“数智影响力”先锋案例
前端·后端·程序员