【Python | 杂代码】Python与Json之间数据交互

简介: 【Python | 杂代码】Python与Json之间数据交互

简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。

1.什么是Json

JSON其实是一个单独的语言,跟javascript没有多大关系,并不是傍javascript出现的。它的存在是为了跨语言交换数据。

 

2.Python中的Json

Pyrhon中Json的载体是字符串,Python中字符串可以用单引号也可以使用双引号。但是为了表达JSON字符串必须使用双引号。否则无法解析。

函数

描述

json.dumps

将  Python 对象编码成 JSON 字符串

json.loads

将已编码的  JSON 字符串解码为 Python 对象

1)把json对象转变成python字典

image.png

运行结果:

image.png

2)把python字典转换成json对象

image.png

image.png

这里类型为str,是因为python中json的载体为str类型。

3.数据类型转换表

(1)python-->json

Python

JSON

dict

object

list,tuple

array

str,unicode

string

int,long,float

number

True

true

False

false

None

null

(2)json-->python

JSON

Python

object

dict

array

list

string

unicode

number(int)

int,  long

number(real)

float

true

True

false

False

null

None

4.使用第三方库:Demjson

###安装:官网下载

http://deron.meranda.us/python/demjson/

###函数表:


函数

描述

encode

将Python 对象编码成 JSON 字符串

decode

将已编码的JSON 字符串解码为 Python 对象

与上面用法相似。

5.小项目实践

获取json页面内容,做动态数据分析

# 源代码
import requests
import json
# 1.请求网页获取json页面内容
json_url = “http://t.yushu.im/v2/book/search?q=余华“
get_response = requests.get(json_url)   # 返回的是状态码
get_content = get_response.text   # 返回页面内容
# 2.将页面json格式内容转换成python对象
python_object = json.loads(get_content)
# 2.直接调用 json()方法,将页面内容转换成python对象
# 原理 :json()方法里调用了json.loads()方法,然后把json()方法封装
# python_object = get_response.json()
# 3.可以获取页面任何数据、内容,做数据分析都很方便
#   例如:获取余华作品名和简介
get_books = python_object[‘books’]
counts = len(get_books)
for i in range(0,counts) :
    print("《"+str(get_books[i][‘title’])+"》的" + “简介:\n” +str(get_books[i][‘summary’]))
# 运行结果,只放了一部分数据
《活着》的简介:
 地主少爷福贵嗜赌成性,终于赌光了家业一贫如洗,穷困之中的福贵因为母亲生病前去求医,没想到半路上被国民党部队抓了壮丁,后被解放军所俘虏,回到家乡他才知道母亲已经去世,妻子家珍含辛茹苦带大了一双儿女,但女儿不幸变成了聋哑人,儿子机灵活泼……\n然而,真正的悲剧从此才开始渐次上演,每读一页,都让我们止不住泪湿双眼,因为生命里难得的温情将被一次次死亡撕扯得粉碎,只剩得老了的福贵伴随着一头老牛在阳光下回忆。
《许三观卖血记》的简介:
《许三观卖血记》是余华1995年创作的一部长篇小说,它以博大的温情描绘了磨难中的人生,以激烈的故事形式表达了人在面对厄运时求生的欲望。小说讲述了许三观靠着卖血渡过了人生的一个个难关,战胜了命运强加给他的惊涛骇浪,而当他老了,知道自己的血再也没有人要时,精神却崩溃了。
《兄弟(上)》的简介:
《兄弟》讲述了江南小镇两兄弟李光头和宋钢的人生。李光头的父亲不怎么光彩地意外身亡,而同一天李光头出生。宋钢的父亲宋凡平在众人的嘲笑声中挺身而出,帮助了李光头的母亲李兰,被后者视为恩人。几年后宋钢的母亲也亡故,李兰和宋凡平在互相帮助中相爱并结婚,虽然这场婚姻遭到了镇上人们的鄙夷和嘲弄,但两人依然相爱甚笃,而李光头和宋钢这对没有血缘关系的兄弟也十分投缘。\n李兰去上海看病,而“文革”开始,宋凡平遭受了极其残酷的虐待,但他坚持给病中的妻子写信,隐瞒了事实真相,用想像出的美好生活欺骗着妻子,但最终仍然逃脱不了惨死的命运。李兰为宋凡平守孝,7年不洗头,而李光头和宋钢则在相互照顾中成长……
《在细雨中呼喊》的简介:
 作者以第一人称讲述了一个家庭的欢乐和苦痛,细腻地刻画了柔弱的母亲如何完成了自己忍受的一生,她唯一爆发出来的愤怒是在弥留之际;名叫孙广财的父亲又是如何骄傲地将自己培养成一名彻头彻尾的无赖,他对待自己的父亲和对待自己的儿子,就像对待自己的绊脚石。家中的三兄弟的道路只是短暂地有过重叠,随即就又叉向了各自的方向。
《兄弟》的简介:
 小说讲述了江南小镇两兄弟李光头和宋钢的人生。李光头的父亲不怎么光彩地意外身亡,而同一天李光头出生。宋钢的父亲宋凡平在众人的嘲笑声中挺身而出,帮助了李光头的母亲李兰,被后者视为恩人。几年后宋钢的母亲也亡故,李兰和宋凡平在互相帮助中相爱并结婚,虽然这场婚姻遭到了镇上人们的鄙夷和嘲弄,但两人依然相爱甚笃,而李光头和宋钢这对没有血缘关系的兄弟也十分投缘。\n李兰去上海看病,而“文革”开始,宋凡平遭受了极其残酷的虐待,但他坚持给病中的妻子写信,隐瞒了事实真相,用想像出的美好生活欺骗着妻子,但最终仍然逃脱不了惨死的命运。李兰为宋凡平守孝,7年不洗头,而李光头和宋钢则在相互照顾中成长……


相关文章
|
22天前
|
运维 监控 算法
时间序列异常检测:MSET-SPRT组合方法的原理和Python代码实现
MSET-SPRT是一种结合多元状态估计技术(MSET)与序贯概率比检验(SPRT)的混合框架,专为高维度、强关联数据流的异常检测设计。MSET通过历史数据建模估计系统预期状态,SPRT基于统计推断判定偏差显著性,二者协同实现精准高效的异常识别。本文以Python为例,展示其在模拟数据中的应用,证明其在工业监控、设备健康管理及网络安全等领域的可靠性与有效性。
551 13
时间序列异常检测:MSET-SPRT组合方法的原理和Python代码实现
|
27天前
|
SQL 自然语言处理 数据库
【Azure Developer】分享两段Python代码处理表格(CSV格式)数据 : 根据每列的内容生成SQL语句
本文介绍了使用Python Pandas处理数据收集任务中格式不统一的问题。针对两种情况:服务名对应多人拥有状态(1/0表示),以及服务名与人名重复列的情况,分别采用双层for循环和字典数据结构实现数据转换,最终生成Name对应的Services列表(逗号分隔)。此方法高效解决大量数据的人工处理难题,减少错误并提升效率。文中附带代码示例及执行结果截图,便于理解和实践。
|
18天前
|
XML JSON API
淘宝商品详情API的调用流程(python请求示例以及json数据示例返回参考)
JSON数据示例:需要提供一个结构化的示例,展示商品详情可能包含的字段,如商品标题、价格、库存、描述、图片链接、卖家信息等。考虑到稳定性,示例应基于淘宝开放平台的标准响应格式。
|
28天前
|
JSON Java 数据格式
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——封装统一返回的数据结构
本文介绍了在Spring Boot中封装统一返回的数据结构的方法。通过定义一个泛型类`JsonResult<T>`,包含数据、状态码和提示信息三个属性,满足不同场景下的JSON返回需求。例如,无数据返回时可设置默认状态码"0"和消息"操作成功!",有数据返回时也可自定义状态码和消息。同时,文章展示了如何在Controller中使用该结构,通过具体示例(如用户信息、列表和Map)说明其灵活性与便捷性。最后总结了Spring Boot中JSON数据返回的配置与实际项目中的应用技巧。
99 0
|
28天前
|
JSON Java fastjson
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——使用 fastJson 处理 null
本文介绍如何使用 fastJson 处理 null 值。与 Jackson 不同,fastJson 需要通过继承 `WebMvcConfigurationSupport` 类并覆盖 `configureMessageConverters` 方法来配置 null 值的处理方式。例如,可将 String 类型的 null 转为 "",Number 类型的 null 转为 0,避免循环引用等。代码示例展示了具体实现步骤,包括引入相关依赖、设置序列化特性及解决中文乱码问题。
55 0
|
28天前
|
JSON Java fastjson
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——Spring Boot 默认对Json的处理
本文介绍了在Spring Boot中返回Json数据的方法及数据封装技巧。通过使用`@RestController`注解,可以轻松实现接口返回Json格式的数据,默认使用的Json解析框架是Jackson。文章详细讲解了如何处理不同数据类型(如类对象、List、Map)的Json转换,并提供了自定义配置以应对null值问题。此外,还对比了Jackson与阿里巴巴FastJson的特点,以及如何在项目中引入和配置FastJson,解决null值转换和中文乱码等问题。
58 0
|
1天前
|
JSON Java 数据库连接
怎样用 esProc 计算来自 Restful 的多层 json 数据
esProc 是一款强大的数据处理工具,可简化 Java 处理 Restful 接口返回的复杂多层 JSON 数据的难题。通过 esProc,不仅能轻松访问和解析 Restful 数据,还能高效完成复杂计算任务,并可无缝嵌入 Java 应用中作为计算引擎使用。例如,筛选特定分类订单或计算金额,esProc 的脚本简洁直观,远优于传统 SQL 或纯 Java 实现。此外,esProc 支持安全认证(如 Cookie 和 Token)及 JDBC 集成,为开发者提供灵活高效的解决方案。
|
4天前
|
JSON JavaScript 数据格式
何如定义 JSON Schema 并验证该 json 数据?
本文定义了一个包含 audio 和 tags 两个必需属性的 JSON Schema,用于规范数据结构。其中,audio 是非空字符串,表示音频组件;tags 是非空数组,表示标签组件。通过示例数据和验证工具(如 ajv, NJsonSchema),可确保 JSON 数据符合 Schema 要求,从而保障数据的一致性和正确性。
58 1
|
9天前
|
数据采集 存储 JSON
用Python爬虫抓取数据并保存为JSON的完整指南
用Python爬虫抓取数据并保存为JSON的完整指南
|
1月前
|
数据采集 JSON 数据可视化
JSON数据解析实战:从嵌套结构到结构化表格
在信息爆炸的时代,从杂乱数据中提取精准知识图谱是数据侦探的挑战。本文以Google Scholar为例,解析嵌套JSON数据,提取文献信息并转换为结构化表格,通过Graphviz制作技术关系图谱,揭示文献间的隐秘联系。代码涵盖代理IP、请求头设置、JSON解析及可视化,提供完整实战案例。
152 4
JSON数据解析实战:从嵌套结构到结构化表格

热门文章

最新文章