当前位置: 首页 > news >正文

Python Json数据解析

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

目录

Json数据解析

概念

作用

Json文件组成

Json转化为Python数据类型

Python数据类型转化为json

写入本地json文件

读取本地的json文件

总结


Json数据解析

概念

一种保存数据的格式

作用

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

Json文件组成

{} 代表对象(字典)

[] 代表列表

: 代表键值对

, 分隔为两个部分

Json转化为Python数据类型

将json格式的字符串转化为python数据类型的对象

示例如下:

jstr = '{"name": "zhangsan", "gender": "nan", "hobby": ["乒乓球", "篮球", "羽毛球"], "param": {"a": "b"}}'
pdata = json.loads(jstr)
print(pdata)
print(type(pdata))
print(pdata['hobby'])

执行结果:

{'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a': 'b'}}
<class 'dict'>
['乒乓球', '篮球', '羽毛球']

Python数据类型转化为json

将python数据类型的数据转化为json字符串。

示例如下:

import jsonpdata = {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a':'b'}}
jstr = json.dumps(pdata)
print(jstr)
print(type(jstr))

执行结果:

{"name": "zhangsan", "gender": "nan", "hobby": ["\u4e52\u4e53\u7403", "\u7bee\u7403", "\u7fbd\u6bdb\u7403"], "param": {"a": "b"}}
<class 'str'>

写入本地json文件

写入的路径可以是绝对路径也可以是相对路径,示例使用的是相对路径。

示例如下:

path = './local.json'
jsonData1 = {'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a':'b'}}
with open(path, 'w') as f:json.dump(jsonData1, f)

读取本地的json文件

读取刚才写入的本地json文件。

示例如下:

path1 = './local.json'
with open(path1, 'rb') as f:data = json.load(f)print(data)print(type(data))

执行结果:

{'name': 'zhangsan', 'gender': 'nan', 'hobby': ['乒乓球', '篮球', '羽毛球'], 'param': {'a': 'b'}}
<class 'dict'>

总结

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

相关文章:

Python Json数据解析

本篇主要介绍Python 中json数据如何解析、转化、保存和加载。 目录 Json数据解析 概念 作用 Json文件组成 Json转化为Python数据类型 Python数据类型转化为json 写入本地json文件 读取本地的json文件 总结 Json数据解析 概念 一种保存数据的格式 作用 可以保存本地…...

pyinstaller打包pytorch和transformers程序

记录使用pyinstaller打包含有pytorch和transformers库的程序时遇到的问题和解决方法。 环境和版本信息 操作系统&#xff1a;Windows 11 Python&#xff1a;3.10.12 pyinstaller&#xff1a;5.13.0 torch&#xff1a;2.2.2 transformers&#xff1a;4.40.1 打包过程和问…...

西门子数控网络IP设定配置

总结&#xff1a;menuselect-诊断-屏幕下方右翻页找到tcp/ip&#xff0c;进去选择tcp/ip诊断&#xff0c;进去选择x130网口&#xff0c;点击更改&#xff0c; 如果没有更改&#xff0c;menuselect-调试-口令&#xff0c;输入口令 sunrise 然后重新配置tcp/ip&#xff0c;配置完…...

[Unity]备份许可文件

原因&#xff1a;因Unity需要重新恢复出厂设置&#xff0c;所以需要先将许可文件本分到本地&#xff0c;以便重新初始化后输入许可。 1&#xff09;登录管理网络web界面&#xff0c;在服务页面打开SSH 2&#xff09;ssh到管理网络&#xff0c;使用service用户登录 3&#xf…...

第十五届蓝桥杯省赛大学B组(c++)

很幸运拿了辽宁赛区的省一,进入6月1号的国赛啦... 这篇文章主要对第十五届省赛大学B组(C)进行一次完整的复盘,这次省赛2道填空题6道编程题: A.握手问题 把握手情景看成矩阵: 粉色部分是7个不能互相捂手的情况 由于每个人只能和其他人捂手, 所以黑色情况是不算的 1和2握手2和…...

Python Flask框架(一)初识Flask

Flask是使用Python编写的Web微框架。Web框架可以使我们不用关心底层的请求响应处理&#xff0c;更方便高效的编写Web程序。Flask有两个主要依赖&#xff0c;一个是WSGI&#xff08;Web Server Gateway Interface&#xff0c;web服务器网关接口&#xff09;工具集&#xff0c;另…...

VS2022 .Net6.0 无法打开窗体设计器

拿Vs2022 建了个Demo&#xff0c;运行环境是net6.0-windows&#xff0c;无论双击或是右键都打不开窗体设计器 打开项目目录下的*.csproj.user <?xml version"1.0" encoding"utf-8"?> <Project ToolsVersion"Current" xmlns"htt…...

Linux学习之高级IO

之前的内容我们基本掌握了基础IO&#xff0c;如套接字&#xff0c;文件描述符&#xff0c;重定向&#xff0c;缓冲区等知识都是文的基本认识&#xff0c;而高级IO则是指更加高效的IO。 对于应用层&#xff0c;在读写的时候&#xff0c;本质就是把数据写给OS&#xff0c;若一方…...

一分钟了解Polysciences PEI 40K转染试剂的原理

在细胞实验中&#xff0c;细胞转染大概是最常用、最基础的实验技能。转染细胞的方法很多&#xff0c;而PEI作为带有高电荷阳离子的多聚物&#xff0c;非常容易结合带负电荷的DNA分子&#xff0c;形成复合物&#xff0c;在HEK293和CHO等细胞中转染效率较高&#xff0c;常用于大规…...

Clickhouse IP 函数

IPv4NumToString(num)​ 将数字类型ip转换为IPv4格式。 Takes a UInt32 number. Interprets it as an IPv4 address in big endian. Returns a string containing the corresponding IPv4 address in the format A.B.C.d (dot-separated numbers in decimal form). Alias: …...

【Python】numpy.ptp()

numpy.ptp() 函数是 NumPy 库中的一个有用函数&#xff0c;用于计算数组中的“峰到峰”&#xff08;peak-to-peak&#xff09;值&#xff0c;即数组中的最大值与最小值之差。这个函数可以帮助快速评估数组中数据的变化范围&#xff0c;常用于信号处理、数据分析等领域中&#x…...

The provided password or token is incorrect or your account

IDEA使用git技巧 【/n】 01 问题出现场景 我的gitlab上个月生成的token到期了,于是今天推上去的时候报了这个错误 The provided password or token is incorrect or your account has 2FA enabled and you must use a personal access token instead of a password. See ht…...

常见的shell命令

以下是一些常见的shell命令&#xff1a; cd&#xff1a;改变当前目录&#xff1b;ls&#xff1a;列出目录中的文件和子目录&#xff1b;mkdir&#xff1a;创建一个新的目录&#xff1b;touch&#xff1a;创建一个新的空文件或更新已存在的文件的时间戳&#xff1b;rm&#xff…...

堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41),framework修改,去除第三方app的倒计时页面

文章目录 堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41)&#xff0c;framework修改&#xff0c;去除第三方app的倒计时页面1.打印异常堆栈2.去除第三方app的倒计时页面3.模拟点击事件跳过首页进入主页 堆栈打印跟踪Activity的启动过程(基于Android10.0.0-r41)&#x…...

只允许内网访问时,如何设置hosts

1、Hosts文件简介 hosts文件是一个没有扩展名的计算机文件&#xff0c;用于将主机名与对应的 IP 地址关联起来。在操作系统中&#xff0c;hosts文件通常用于在本地解析域名&#xff0c;以便将域名映射到特定的IP地址。这个文件可以用来屏蔽广告、加速访问特定网站、解决DNS解析…...

nature《自然》期刊文献怎么在家查看下载

nature《自然》期刊我们都知道&#xff0c;是世界上历史悠久的、最有名望的科学杂志之一。下载该期刊文献是需要使用权限的&#xff0c;如果你没有nature《自然》期刊的资源&#xff0c;又该如何获取呢&#xff1f;请看本文的经验分享。 一、先百度“文献党下载器” 在文献党下…...

python作业五

题目&#xff1a;注册登录 制作一个注册登录模块 注册&#xff1a;将用户填入的账户和密码保存到一个文件(users.bin) 登陆&#xff1a;将用户填入账户密码和users.bin中保存的账户密码进行比对,如果账户和密码完全相同 那 么登录成功&#xff0c;否则登录失败…...

经典的设计模式和Python示例(一)

目录 一、工厂模式&#xff08;Factory Pattern&#xff09; 二、单例模式&#xff08;Singleton Pattern&#xff09; 三、观察者模式&#xff08;Observer Pattern&#xff09; 一、工厂模式&#xff08;Factory Pattern&#xff09; 工厂模式&#xff08;Factory Pattern…...

Ubuntu服务器如何安装桌面

更新软件库 apt-get update 升级软件 apt-get upgrade 安装ubuntu桌面系统 apt-get install ubuntu-desktop 运行过程需要手动确认两次&#xff0c;选择 Y。 安装完成之后&#xff0c;终端输入 reboot&#xff0c;重启服务器。...

填报表如何实现电话号码的校验

单元格校验时&#xff0c;只能输入数字和特定字符&#xff08;-&#xff09;&#xff0c;即实现固话和手机号码的校验&#xff0c;保证录入的规范&#xff0c;应如何实现&#xff1f; 解决方案&#xff1a;使用正则表达式实现校验效果&#xff0c;如下图所示&#xff1a; 校验…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...

自然语言处理——文本分类

文本分类 传统机器学习方法文本表示向量空间模型 特征选择文档频率互信息信息增益&#xff08;IG&#xff09; 分类器设计贝叶斯理论&#xff1a;线性判别函数 文本分类性能评估P-R曲线ROC曲线 将文本文档或句子分类为预定义的类或类别&#xff0c; 有单标签多类别文本分类和多…...