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字符串连接方式汇总,很实用的基础技巧汇总,需要的朋友可以参考下
    2014-08-08
  • Python爬虫中Selenium实现文件上传

    Python爬虫中Selenium实现文件上传

    这篇文章主要介绍了Python爬虫中Selenium实现文件上传,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 你应该知道的Python3.6、3.7、3.8新特性小结

    你应该知道的Python3.6、3.7、3.8新特性小结

    这篇文章主要介绍了你应该知道的Python3.6、3.7、3.8新特性小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • 关于PyTorch源码解读之torchvision.models

    关于PyTorch源码解读之torchvision.models

    今天小编就为大家分享一篇关于PyTorch源码解读之torchvision.models,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python内建模块collections实现特殊容器数据类型

    Python内建模块collections实现特殊容器数据类型

    collections模块是Python的内建模块之一,它实现了特殊的容器数据类型,提供了Python内建的数据类型dict、list、set、和tuple的高效替代选择
    2023-06-06
  • Python小实例混合使用turtle和tkinter让小海龟互动起来

    Python小实例混合使用turtle和tkinter让小海龟互动起来

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中
    2021-10-10
  • 对Python3中的input函数详解

    对Python3中的input函数详解

    下面小编就为大家分享一篇对Python3中的input函数详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 让python的Cookie.py模块支持冒号做key的方法

    让python的Cookie.py模块支持冒号做key的方法

    虽然Cookie的标准是不允许:冒号出现在key里面的,但是我们的开发人员是很可爱的,常常会让我们意想不到。
    2010-12-12
  • django 控制页面跳转的例子

    django 控制页面跳转的例子

    今天小编就为大家分享一篇django 控制页面跳转的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • djano一对一、多对多、分页实例代码

    djano一对一、多对多、分页实例代码

    在本篇文章里小编给大家整理的是关于djano一对一,多对多,分页实例代码以及相关知识点,需要的朋友们学习下。
    2019-08-08

最新评论