此账号为华为云开发者社区官方运营账号,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态
本文分享自华为云社区《从零开始学python| 什么是python json以及如何实现?》,原文作者:yuchuan。
您知道如何从在线 api 传输数据或将各种数据存储到本地计算机吗?您已经将自己沉浸于 json 的一种方式中,json 表示 java script objectnotation。它是一种著名的流行数据格式,用于表示半结构化数据。让我们详细了解 python json。
本文将讨论以下方面:
python json 简介如何在 python 中读取 json 文件解析中从 python 转换为 json从 json 转换为 python熊猫解析 jsonjson 序列化[编码]漂亮的印刷json 的反序列化[解码]编码示范json 代表 java 小号 scriptobjectn 浮选是存储在一个有组织的和容易的方式信息的方式。在浏览器和测定小灯泡电功率服务器之间交换数据时,数据必须为文本形式。
如果您想知道它是否是 javascript?那么答案是否定的。它是一个由文本组成的脚本,用于以人类和机器可读格式存储和传输数据。它是一种受 javascript 启发的小型轻量数据格式,通常以文本或字符串格式使用。json 数据包几乎等同于 python 字典。现在,您一定想知道。
问题的答案是,您必须导入 json 模块,该模块通常将 python 数据类型转换为 json 字符串文件。它由直接从 json 文件读取和写入的 json 函数组成。python 具有内置的 json 包,并且是标准库的一部分,因此您无需安装它。
import json
现在您已经了解了 python 中的 json,下面让我们更深入地分析 parsing。
json 库可以从字符串或文件中解析 json 。它还可以将 json 解析到 python 上戏校花字典或列表中,反之亦然。解析通常分为两个阶段:
1. 从 json 转换为 python
2. 从 p海伦凯勒的作品ython 转换为 json
让我们更好地了解这两个阶段。
您可以使用以下方法将 json 字符串转换为 python json.loads(). :
import jsonpeople_string = '''{"people":[{"emp_name": "john smith","emp_no.": "924367-567-23","emp_email": ["johnsmith@dummyemail.com"],"has_licen": "fal"},{"emp_name": "harshit kant","emp_number": "560-555-5153","emp_email": "null","has_licen": "true"}]}'''data = json.loads(people_string)print(data)
从上面的输出中可以看到,它已经打印了 python 字典。让我们打印数据类型以更好地理解。
import jsonpeople_string = '''{"people":[{"emp_name": "john smith","emp_no.": "924367-567-23","emp_email": ["johnsmith@dummyemail.com"],"has_licen": "fal"},{"emp_name": "harshit kant","emp_number": "560-555-5153","emp_email": "null","has_licen": "true"}]}'''data = json.loads(people_string)print(type(data)) #prints the datatype
<class’dict’>
现在,您已经熟悉一个转换,让我们在第二阶段看看另一种转换类型。
通过使用 json.dumps(). 下面给出的示例,可以将 python 对象转换为 json 字符串:
import jsonpeople_string = '''{"people":[{"emp_name": "john smith","emp_no.": "924367-567-23","emp_email": ["johnsmith@dummyemail.com"],"has_licen": "fal"},{"emp_name": "harshit kant","emp_no.": "560-555-5153","emp_email": "null","has_licen": "true"}]}'''data = json.loads(people_string)new_string = json.dumps(data)print(new_string)
输出将是 json 字符串类型。我已经在 json 到 python 的转换中演示了数据类型,将遵循相同的过程来打印数据类型。
让我们继续前进,看看 p教师节祝福语 贺卡andas 如何解析 json。
可以通过以下步骤将 json 字符串解析为 pandas dataframe:
以下通用结构可用于将 json 字符串加载到 dataframe 中import pandas as pd pd.read_json(r'path where you saved the json filefile name.json'
准备 json 字符串。创建一个我们正在使用的 json 文件 nobel_prize.json。将 json 文件加载到 pandas dataframe 中。下面实现的代码将我的 json 文件加载到 dataframe 中。
import pandas as pdimport json with四年级数学题100道 open(r'c:ursharshit_kantdesktopnobel.prize.json') as f: data = json.load(f)print (data) df = pd.dataframe print(df)
继续前进,让我们看看如何在 python 中序列化 json。
序列化 json 只是意味着您正在编码 json。它将给定的 python 数据结构(ex:dict)转换为其有效的 json 对象。为了处理文件中的数据流,python 中的 json 库使用 dump()和 dumps()方法,该方法进行转换并使其易于将数据写入文件中。
下表是说明将 python 数据类型转换为各自的 json 类型的表格。
要记住的要点:
dump() –将数据转换为 json 文件
dumps() –将数据转换为 json 字符串
load() –将 json 文件转换为 python 对象
loads()–将 json 字符串的对象转换为 python 对象
pretty printing 负责代码对齐并使其以人类可读的格式进行。让我们看下面的示例,其中我传递了两个参数’sort_keys’,这些参数始终返回布尔 true 值和’indent’空格。
import jsonpeople_string = '''{"people":[{ "emp_name": "john smith", "emp_no.": "924367-567-23", "emp_email": ["johnsmith@dummyemail.com"], "has_licen": "fal"},{ "emp_name": "harshit kant", "emp_no.": "560-555-5153", "emp_email": "null", "has_licen": "true"}]}''' data = json.loads(people_string)new_string = json.dumps(data, sort_keys=true, indent=3)print(new_string)
输出:
继续进行 python json 教程,让我们了解 json 的反序列化。
json 的反序列化与序列化完全相反,也就是说,这意味着您正在解码 json。它将通过使用执行转换的 load()和 load()方法将给定的 json 字符串转换为 python 对象。
下表是说明将 json 数据类型转换为其相应的 python 类型的表格。
继续进行“ pythonjson”教程。我将通过编码的角度向您展示一个同时进行序列化和反序列化的实时示例。
在此编码演示中,我将使用此处给出的 json 数据集,称为“诺贝尔奖” 。您将学习如何通过 json 文件进行序列化和反序列化。
import json with open('nobel_prize.json.html') as f: data = json.load(f) with open('new_nobel_prize.json.html') as f: json.dump(data,f,indent=2)
python 代码已成功编译,并创建了一个新文件“new_nobel_prize.json”,将从现有文件“nobel_prize.json”中转储数据。
import json with open('nobel_prize.json.html') as f:data = json.load(f) for nobel_prize in data['prizes']:print(nobel_prize['year'],nobel_prize['category'])
该代码段显示了从 json 文件到其相应的 python 对象的更改。
希望您对与 json 的解析,序列化和反序列化有关的所有概念感到清楚。
本文发布于:2023-04-05 12:08:34,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/d5e2f18f7f5cf5e27c28e38a15d38efb.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:json格式怎么打开(手机读取json格式文件软件).doc
本文 PDF 下载地址:json格式怎么打开(手机读取json格式文件软件).pdf
留言与评论(共有 0 条评论) |