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

相关推荐
AAA小肥杨6 分钟前
基于k8s的Python的分布式深度学习训练平台搭建简单实践
人工智能·分布式·python·ai·kubernetes·gpu
天若有情6731 小时前
Java Swing 实战:从零打造经典黄金矿工游戏
java·后端·游戏·黄金矿工·swin
一只叫煤球的猫2 小时前
建了索引还是慢?索引失效原因有哪些?这10个坑你踩了几个
后端·mysql·性能优化
lichong9512 小时前
Git 检出到HEAD 再修改提交commit 会消失解决方案
java·前端·git·python·github·大前端·大前端++
Tiny番茄2 小时前
31.下一个排列
数据结构·python·算法·leetcode
小白学大数据3 小时前
实战:Python爬虫如何模拟登录与维持会话状态
开发语言·爬虫·python
FriendshipT3 小时前
目标检测:使用自己的数据集微调DEIMv2进行物体检测
人工智能·pytorch·python·目标检测·计算机视觉
magic334165633 小时前
Springboot整合MinIO文件服务(windows版本)
windows·spring boot·后端·minio·文件对象存储
平谷一勺3 小时前
数据清洗-缺失值的处理
python·数据分析
末世灯光3 小时前
时间序列入门第一问:它和普通数据有什么不一样?(附 3 类典型案例)
人工智能·python·机器学习·时序数据