Python提取JSON格式数据实战案例

 更新时间:2023年07月28日 15:26:44   作者:夜猫子不秃  
这篇文章主要给大家介绍了关于Python提取JSON格式数据的相关资料, Python提供了内置的json模块,用于处理JSON数据,文中给出了详细的代码示例,需要的朋友可以参考下

前言:

我们经常会用到json数据,json数据格式主要是用来和不同语言之间进行交互

比如你要给java端的提供数据,你需要将自己的数据转换为json格式才行

所以不管是提供给后端其他人,还是从API返回的数据结果,我们都需要封装成json数据格式或者解析json数据

json的数据格式类似于python中的字典,都是key:value,当然value也可以是数组的格式

一、JSON使用

1.导入json的包

import json

2.常用的方法

函数描述
json.dumps将python的数据转为json格式提供出去
json.loads将json格式数据解析为python格式

举例:json.loads()

import json

strDict = '{"city": "广州", "name": "小黑"}'
print(type(strDict)) #<class 'str'>

# 将json格式数据转换为python格式,可以看出将str还原为了dict格式
r = json.loads(strDict) 
print(r,type(r)) # {'city': '广州', 'name': '小黑'} <class 'dict'>

json.dumps()

import json

listStr = [1, 2, 3, 4]
dictStr = {"city": "北京", "name": "大猫"}
print(type(listStr)) # <class 'list'>
print(type(dictStr)) #<class 'dict'>

# 将python数据转为json格式,可以看出转换后的数据类型均变为了str
s1 = json.dumps(listStr)
s2 = json.dumps(dictStr,ensure_ascii=False)

print(s1,type(s1)) # [1, 2, 3, 4] <class 'str'>
print(s2,type(s2)) # {"city": "北京", "name": "大猫"} <class 'str'>

二、实战

1.json.loads()

json的数据格式如下

{
    "animals": {
        "dog": [
            {
                "name": "Rufus",
                "age":15
            },
            {
                "name": "Marty",
                "age": null
            }
        ]
    }
}

我们想要取出json格式中所有狗的名字:

load_data = json.loads(dump_data)
data = load_data['animals']['dog']
result1 = []
for i in data:
    result1.append(i.["name"])
print(result1)

运行结果

['Rufus', 'Marty']

2.jsonpath

如果用jsonpath工具如何取数呢?

load_data = json.loads(dump_data)
jobs=load_data['animals']['dog']
result2 = []
for i in data:
# 从根节点开始,匹配name节点
    result2.append(jsonpath.jsonpath(i,'$..name')[0])
print(result2)

总结 

到此这篇关于Python提取JSON格式数据的文章就介绍到这了,更多相关Python提取JSON数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入理解python多进程编程

    深入理解python多进程编程

    下面小编就为大家带来一篇深入理解python多进程编程。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • 基于Pytorch实现的声音分类实例代码

    基于Pytorch实现的声音分类实例代码

    声音分类是音频深度学习中应用最广泛的方法之一,下面这篇文章主要给大家介绍了如何基于Pytorch实现声音分类的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • 如何利用Python写个坦克大战

    如何利用Python写个坦克大战

    这篇文章主要给大家介绍了关于如何利用Python写个坦克大战的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • django 多数据库及分库实现方式

    django 多数据库及分库实现方式

    这篇文章主要介绍了django 多数据库及分库实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python tcp传输代码实例解析

    Python tcp传输代码实例解析

    这篇文章主要介绍了Python tcp传输代码实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Python实现打印螺旋矩阵功能的方法

    Python实现打印螺旋矩阵功能的方法

    这篇文章主要介绍了Python实现打印螺旋矩阵功能的方法,简单描述了螺旋矩阵的概念、原理及Python实现方法,需要的朋友可以参考下
    2017-11-11
  • win10系统下如何彻底卸载anaconda3

    win10系统下如何彻底卸载anaconda3

    最近跑代码的时候老出现各种错误,因为之前卸载过一次anaconda,所以猜测可能是没有卸载干净,所以又重新卸载了一遍,下面这篇文章主要给大家介绍了关于win10系统下如何彻底卸载anaconda3的相关资料,需要的朋友可以参考下
    2023-04-04
  • Python进程间通讯与进程池超详细讲解

    Python进程间通讯与进程池超详细讲解

    进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块主要通过队列方式,队列:队列类似于一条管道,元素先进先出,需要注意的一点是:队列都是在内存中操作,进程退出,队列清空,另外,队列也是一个阻塞的形态
    2022-12-12
  • Python 异步之生成器示例详解

    Python 异步之生成器示例详解

    这篇文章主要为大家介绍了Python 异步之生成器示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 利用Tensorboard绘制网络识别准确率和loss曲线实例

    利用Tensorboard绘制网络识别准确率和loss曲线实例

    今天小编就为大家分享一篇利用Tensorboard绘制网络识别准确率和loss曲线实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02

最新评论