Python解析JSON数据的示例代码

 更新时间:2024年09月18日 08:59:37   作者:matrixlzp  
JSON格式是网站和API使用的通用标准格式,现在主流的一些数据库(如PostgreSQL)都支持JSON格式,在本文中,我们将介绍如何使用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')
输出   n
 
print('\n')
输出换行

而 window 系统中,磁盘路径,又都是用 \ 反斜杠表示的,

如果直接把它作为文件路径,python 会报错:

有两种解决方式:

1)\\   两个反斜杠,字面意思,以 \ 转义掉原来 \ 转义的含义,变为输出 \

但这毕竟比较麻烦,所以有第二种方法

2)在字符串前面加 r,忽略掉字符串里面 \ 的转义含义,让它原样输出 \

以上就是Python解析JSON数据的示例代码的详细内容,更多关于Python解析JSON数据的资料请关注脚本之家其它相关文章!

相关文章

  • Django自定义分页与bootstrap分页结合

    Django自定义分页与bootstrap分页结合

    这篇文章主要为大家详细介绍了Django自定义分页与bootstrap分页结合使用的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • PySide6 命名空间的使用小结

    PySide6 命名空间的使用小结

    PySide6的命名空间通过逻辑分类和清晰的枚举值设计,极大提高了代码可读性和维护性,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2025-07-07
  • Django对models里的objects的使用详解

    Django对models里的objects的使用详解

    今天小编就为大家分享一篇Django对models里的objects的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • 如何使用python代码操作git代码

    如何使用python代码操作git代码

    Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。本文通过实例代码给大家介绍如何使用python代码操作git,感兴趣的朋友一起看看吧
    2020-02-02
  • python3实现高效的端口扫描

    python3实现高效的端口扫描

    这篇文章主要为大家详细介绍了python3实现高效的端口扫描,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • Python无法用requests获取网页源码的解决方法

    Python无法用requests获取网页源码的解决方法

    爬虫获取信息,很多时候是需要从网页源码中获取链接信息的,下面这篇文章主要给大家介绍了关于Python无法用requests获取网页源码的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 提取视频中的音频 Python只需要三行代码!

    提取视频中的音频 Python只需要三行代码!

    这篇文章主要介绍了python 如何提取视频中的音频,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-05-05
  • 从零教你如何使用Python实现GIF压缩效果

    从零教你如何使用Python实现GIF压缩效果

    如果你经常在网上收集各种有趣的GIF动图,但发现它们占用了太多空间,所以本文小编就来和大家详细介绍一下如何使用Python实现GIF压缩效果吧
    2025-07-07
  • Django外键(ForeignKey)操作以及related_name的作用详解

    Django外键(ForeignKey)操作以及related_name的作用详解

    这篇文章主要介绍了Django外键(ForeignKey)操作以及related_name的作用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python爬虫实现的根据分类爬取豆瓣电影信息功能示例

    Python爬虫实现的根据分类爬取豆瓣电影信息功能示例

    这篇文章主要介绍了Python爬虫实现的根据分类爬取豆瓣电影信息功能,结合完整实例形式分析了Python针对电影信息分类抓取的相关实现技巧,需要的朋友可以参考下
    2019-09-09

最新评论