Python 解析 JSON 数据
1、有如下 JSON 数据,存放在 data.json 文件:
[{"id":1, "name": "小王", "gender": "male", "score": 96.8},
{"id":2, "name": "小婷", "gender": "female", "score": 95.5},
{"id":3, "name": "小崔", "gender": "male", "score": 80.5}]
2、写一个 python 脚本(test1.py)解析这个文件:
# 导入 python 内置的 json 模块
import json# 读取 JSON 文件
input_path = r"C:\Users\Administrator\Desktop\py\study\data.json"
# 解析完的 JSON 数据存放的输出文件
output_path = r"C:\Users\Administrator\Desktop\py\study\result.txt"# 以只读(r:read)的方式打开 输入文件
with open(input_path, 'r', encoding='utf-8') as file:# 将 JSON 数据加载到变量 data 中data = json.load(file)# 以追加 (a:append) 的方式打开 输出文件
output_file=open(output_path, 'a', encoding='utf-8')# 如果 JSON 数据是一个列表,可以遍历列表中的元素
if isinstance(data, list):# enumerate 函数可以方便地同时获取索引(i)和元素值(item)for i, item in enumerate(data):# \n 转义字符,换行的意思 i 是个数字,需要用 str() 函数转换为字符串类型# 打印在屏幕print('\n'+str(i+1)+'、'+item['name']+'的个人资料')# 输出在文件output_file.write('\n'+str(i+1)+'、'+item['name']+'的个人资料')output_file.write('\n 性别:'+item['gender']) output_file.write('\n 得分:'+str(item['score']))# 关闭文件,防止资源泄露
output_file.close()
3、在脚本所在路径,打开 powershell.exe,运行这个脚本:
result.txt 输出数据如下:
像这种简单的脚本程序,现在都可以叫 AI (比如豆包) 帮我们写:
4、扩展:
字符串前面加 r 是什么意思?
r/R 字符串前面加大R或者小r,是原始字符串。所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。
我们知道,\ 反斜杠在python中是转义字符,比如 \n 就是 换行。转换了原来 n 字符的原始意思,变为 换行。
print('n')
输出 nprint('\n')
输出换行
而 window 系统中,磁盘路径,又都是用 \ 反斜杠表示的,
如果直接把它作为文件路径,python 会报错:
有两种解决方式:
1)\\ 两个反斜杠,字面意思,以 \ 转义掉原来 \ 转义的含义,变为输出 \
但这毕竟比较麻烦,所以有第二种方法
2)在字符串前面加 r,忽略掉字符串里面 \ 的转义含义,让它原样输出 \
5、应用
python 解析 JSON 文件的应用很广泛,就比如,可以用来解析,抓包软件 Charles 的 session 文件。
相关文章:

Python 解析 JSON 数据
1、有如下 JSON 数据,存放在 data.json 文件: [{"id":1, "name": "小王", "gender": "male", "score": 96.8}, {"id":2, "name": "小婷", "gender&qu…...
利用LlamaIndex构建ARG本地知识库
文章目录 1. 环境准备2. 启用诊断日志3. 配置本地模型4. 配置本地向量模型5. LlamaIndex全局配置6. 创建 PGVectorStore7. 从数据库加载数据8. 文本分割器: SpacyTextSplitter9. 配置管道10. 创建向量存储索引11 .指定响应模式,以及启用流式响应 在现代的人工智能应…...
PCM的缺点
PCM的主要缺点包括需要较大的数据传输带宽和存储空间,导致无法实现高压缩比,相对较低的数据压缩效率。 PCM(脉冲编码调制)作为一种无损编码技术,虽然能够保留原始信号的完整性,适用于需要高保…...

【C语言】(指针系列四)回调函数+qsort函数
一、回调函数 回调函数就是通过函数指针调用的函数 如果你把函数的指针作为参数传递给另外一个函数,当这个指针被用来调用其所指向的函数时,被调用的函数就是回调函数。回调函数并不是一个单一的函数实现的,而是在某种情况下,编…...

全面理解tensor编程中矩阵的行和列
经常会在编程中遇到理解矩阵行和列的事情。 1、要明确无论这个张量有多少维度,它的矩阵乘法都只能作用于最后两个维度。 例如: import torcha torch.rand([64, 32, 3, 4]) b torch.rand([64, 32, 3, 4])c torch.matmul(a, b.transpose(2, 3)) # 交…...
【Kubernetes】常见面试题汇总(十)
目录 29.简述 Kubernetes 自动扩容机制? 30.简述 Kubernetes Service 类型? 31.简述 Kubernetes Service 分发后端的策略? 32.简述 Kubernetes Headless Service ? 29.简述 Kubernetes 自动扩容机制? (…...

CSS —— 界面布局
flexbox - 弹性盒子布局(弹性布局) 一维方向,横纵向排列。 采用flex布局的元素,称为 Flex 容器(flex container),简称"容器" flex-direction 用于设置主轴方向;子元素默…...

SpringBoot万级并发-jemeter-Address already in use: connect
一、场景 用Jmeter压力单测接口的时候,发现报 Response code:Non HTTP response code: java.net.BindException Response message:Non HTTP response message: Address already in use: connect 然后我这边是wondows的电脑操作压测的,操作系统win10&…...
P1228 地毯填补问题
 #include<bits/stdc.h> using namespace std; #define qw dfs(zxl-1,zyl-1,zx,zy,l); #define we dfs(zxl-1,zyl,zx,zyl,l); #define er dfs(zxl,zyl-1,zxl,zy,l); #define rt dfs(zxl,zyl,zxl,zyl,l);void dfs(int x,int y,int zx,int zy,int…...

【计算机网络】UDP TCP介绍
UDP & TCP介绍 UDP报文格式报文内容介绍端口号报文长度校验和载荷 TCP报文格式初步了解TCP机制确认应答超时重传连接管理滑动窗口流量控制拥塞控制紧急传输数据推送延时应答捎带应答面向字节流异常处理心跳机制 UDP 和 TCP 的区别 UDP 报文格式 对于网络协议, 本质上就是…...

JDBC初相识
文章目录 JDBC的由来JDBC的好处 JDBC核心API的介绍JDBC会用到的包JDBC四个核心对象JDBC访问数据库的步骤 客户端操作MySQL数据库的方式 使用第三方客户端来访问MySQL:SQLyog、Navicat 使用MySQL自带的命令行方式 通过Java来访问MySQL数据库,今天要学习…...
Go语言现代web开发07 map字典
Maps are complex data types used to store key-value pairs. Each key can appear only once on the map and can be used to find the value paired with that key. The default value for the map is nil. A nil map has no keys and keys cannot be added. 映射是用于存储…...

AI工具一键制作爆火的“汉语新解“卡片!
最近出现了一种很火的新玩法“汉语新解”。 AI把一个词汇,以一种特殊的视角,用幽默、讽刺等方式重新定义,然后生成一张精美的卡片。 这个玩法和之前我发的的吐槽工具玩法类似,主打的就是一个新颖、情绪释放。 今天教大家怎么快速…...
windows检查端口占用并关闭应用
要在Windows CMD中找到占用8888端口的应用并关闭该应用,你可以按照以下步骤操作: 打开命令提示符(CMD)。你可以通过在搜索栏输入 cmd 或使用 Win R 快捷键,然后输入 cmd 并回车来打开。 查找占用8888端口的进程。在C…...

机器学习-聚类算法
机器学习-聚类算法 1.AHC2. K-means3. SC4.MCL 仅个人笔记,感谢点赞关注! 1.AHC 2. K-means 3. SC 传统谱聚类:个人对谱聚类算法的理解以及改进 4.MCL 目前仅专注于NLP的技术学习和分享 感谢大家的关注与支持!...

keil 中 printf重定向
int fputc(int ch, FILE *f) {HAL_UART_Transmit(&huart1, (void*)&ch, 1, 1000);return ch;} 同时勾选,使用微库...

yum下载软件失败:‘Could not resolve host: mirrorlist .centos .org; Unknowm error
Loaded plugins: fastestmirror, ovl Determining fastest mirrors Could not retrieve mirrorlist http://mirrorlist.centos.org/?release7&archx86_64&repoos&infracontainer error was 14: curl#6 - “Could not resolve host: mirrorlist.centos.org; Unknow…...

云轴科技ZStack 获鲲鹏应用创新大赛2024上海赛区决赛一等奖
9月13日,鲲鹏应用创新大赛2024上海赛区决赛成功举办。经评委专家从方案创新性、技术领先性、商业前景以及社会价值四个维度严格评审,云轴科技ZStack参赛作品《ZStack鲲鹏原生开发方案》荣获上海赛区企业赛——原生开发赛道(互联网)…...

沉浸式体验Stability AI最新超强AI图片生成模型Ultra
2024年9月4日,亚马逊云科技在Amazon Bedrock上新了Stability AI最新的的三款文本图像生成模型:他们分别是Stable Image Ultra、Stable Diffusion 3 Large 和 Stable Image Core。全新的模型在处理多主题提示词、图像质量和图片排版上较上一代模型有显著提…...
网络安全宣传周的时间,举办活动的方式和意义
网络安全宣传周是中国国家层面为提升公众网络安全意识、普及网络安全知识、推广网络安全技能而设立的一项重要活动。以下是对网络安全宣传周的时间,举办活动的方式和意义的介绍: 时间:国家网络安全宣传周自2014年首次举办以来,每…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...

汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...