当前位置: 首页 > 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; 校验…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

Vite中定义@软链接

在webpack中可以直接通过符号表示src路径&#xff0c;但是vite中默认不可以。 如何实现&#xff1a; vite中提供了resolve.alias&#xff1a;通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...

如何应对敏捷转型中的团队阻力

应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中&#xff0c;明确沟通敏捷转型目的尤为关键&#xff0c;团队成员只有清晰理解转型背后的原因和利益&#xff0c;才能降低对变化的…...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态

前言 在人工智能技术飞速发展的今天&#xff0c;深度学习与大模型技术已成为推动行业变革的核心驱动力&#xff0c;而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心&#xff0c;系统性地呈现了两部深度技术著作的精华&#xff1a;…...

QT开发技术【ffmpeg + QAudioOutput】音乐播放器

一、 介绍 使用ffmpeg 4.2.2 在数字化浪潮席卷全球的当下&#xff0c;音视频内容犹如璀璨繁星&#xff0c;点亮了人们的生活与工作。从短视频平台上令人捧腹的搞笑视频&#xff0c;到在线课堂中知识渊博的专家授课&#xff0c;再到影视平台上扣人心弦的高清大片&#xff0c;音…...

二维FDTD算法仿真

二维FDTD算法仿真&#xff0c;并带完全匹配层&#xff0c;输入波形为高斯波、平面波 FDTD_二维/FDTD.zip , 6075 FDTD_二维/FDTD_31.m , 1029 FDTD_二维/FDTD_32.m , 2806 FDTD_二维/FDTD_33.m , 3782 FDTD_二维/FDTD_34.m , 4182 FDTD_二维/FDTD_35.m , 4793...