位置: IT常识 - 正文

【python模块】python解析json文件详解(python模块怎么写)

编辑:rootadmin
【python模块】python解析json文件详解 一、什么是json文件

推荐整理分享【python模块】python解析json文件详解(python模块怎么写),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python 模块,python 模块,python模块怎么用,python模块总结,python模块详解,py 模块,python pty模块,python官方模块大全,内容如对您有帮助,希望把文章链接给更多的朋友!

JSON(Java Script Object Notation)是一种通常用于以不会“对系统造成负担”的方式传输数据(主要通过 API)的格式。基本原理是利用文本来记录数据点,并将数据点传输给第三方。

JSON是一种使用文本存储数据对象的格式。换句话说,它是一种数据结构,将对象用文本形式表示出来。尽管它来源自JavaScript,但它已成为传输对象的实际标准。 大多数流行的编程语言都支持JSON格式,包括Python。JSON格式的文件经常用于API传输数据对象。以下是JSON字符串的示例:

{ "name": "United States", "population": 331002651, "capital": "Washington D.C.", "languages": [ "English", "Spanish" ]}

在这个例子中,JSON数据看起来像一个Python字典。像字典一样,JSON以键值对的形式传递数据。然而,JSON数据也可以是字符串、数字、布尔值或列表。

在JSON流行之前,XML一直是以文本格式表示数据对象的常见选择。以下是XML格式的相同信息的示例:

<?xml version="1.0" encoding="UTF-8"?><country> <name>United States</name> <population>331002651</population> <capital>Washington D.C.</capital> <languages> <language>English</language> <language>Spanish</language> </languages></country>【python模块】python解析json文件详解(python模块怎么写)

很明显,JSON代码量更少。这是JSON如此流行的主要原因之一。

JSON建构于两种结构: json是Javascript中的对象和数组中的对象,本质上来讲就是有特定结构的字符串,所以可以通过这两种结构可以表示各种复杂的结构:

1 对象: 对象在js中表示为”{}”括起来的内容,数据结构为{key:value, key:value…}的键值对结构,在面向对象的语言中,key为对象的属性,value为对应属性的值,所以很容易去理解。属性值value可以为:数字、字符串、数组、对象等。2 数组:数组在js中是中括号“[]”括起来的内容,数据结构为[“java”, “javascript”, “vb”….] 取值方式和所有语言一样,使用索引获取,字段值的类型是:数字、字符串、数组、对象等

简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比”名称 / 值对”更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。

如果你还不了解 JSON,可以先阅读 JSON 教程。

二、常用接口

Python3 中可以使用 json 模块来对 JSON 数据进行编解码,主要包含了下面4个操作函数: 提示:所谓类文件对象指那些具有read()或者 write()方法的对象,例如,f = open(‘a.txt’,‘r’),其中的f有read()方法,所以f就是类文件对象。

Python的JSON模块有四个主要功能:read(),reads(),load(),和loads()。这些功能常常会让人混淆。最重要的地方是字母“s”代表String。另外,在函数loads()和dumps()中的字母“s”需要分开读,即loads读load-s,dumps()读dump-s。

这是一个快速表格,可帮助您记住这些功能:

一般loads用于读取JSON字符串,而load()用于读取文件中的JSON数据。 load()方法接收一个文件对象并返回解析为Python对象的JSON数据。用于编写JSON文件的方法是dump().这种方法与dumps()方法非常相似。唯一的区别是dumps()返回一个字符串,dump()写入一个文件。类型转化

在json的编解码过程中,python 的原始类型与JSON类型会相互转换,具体的转化对照如下:

Python 编码为 JSON 类型转换对应表: JSON 解码为 Python 类型转换对应表: 三、代码示例

详细内容可阅读 blog

import jsondata = { 'name': 'pengjunlee', 'age': 32, 'vip': True, 'address': {'province': 'GuangDong', 'city': 'ShenZhen'}}# 1. 将 Python字典类型 转换为 JSON对象json_str = json.dumps(data)print(json_str) # 结果 {"name": "pengjunlee", "age": 32, "vip": true, "address": {"province": "GuangDong", "city": "ShenZhen"}}# 2. 将 JSON对象类型 转换为 Python字典user_dic = json.loads(json_str)print(user_dic['address']) # 结果 {'province': 'GuangDong', 'city': 'ShenZhen'}print(user_dic.keys())# 3. 将 Python字典 直接输出到 文件with open('pengjunlee.json', 'w', encoding='utf-8') as f: json.dump(user_dic, f, ensure_ascii=False, indent=4) # 缩进4个空格# 4. 将 类文件对象中的JSON字符串 直接转换成 Python字典with open('pengjunlee.json', 'r', encoding='utf-8') as f: ret_dic = json.load(f) print(type(ret_dic)) # 结果 <class 'dict'> print(ret_dic['name']) # 结果 pengjunlee使用eval()能够实现简单的字符串和Python类型的转化。user1 = eval('{"name":"pengjunlee"}')print(user1['name']) # 结果 pengjunlee
本文链接地址:https://www.jiuchutong.com/zhishi/293739.html 转载请保留说明!

上一篇:一文教会你何为重绘、回流?

下一篇:若依框架添加新模块(若依框架使用教程)

  • 如何在qq群里发送在线编辑文档(如何在qq群里发收集表)

    如何在qq群里发送在线编辑文档(如何在qq群里发收集表)

  • sa独立组网是什么意思(sa和nsa区别)

    sa独立组网是什么意思(sa和nsa区别)

  • 美图秀秀如何去掉logo(美图秀秀如何去除马赛克)

    美图秀秀如何去掉logo(美图秀秀如何去除马赛克)

  • qq怎么打出爱心形状(qq怎么打出爱心表情)

    qq怎么打出爱心形状(qq怎么打出爱心表情)

  • 腾讯会议怎么共享视频(腾讯会议怎么共享屏幕看电影)

    腾讯会议怎么共享视频(腾讯会议怎么共享屏幕看电影)

  • 曲面屏能贴钢化膜吗(手机曲面屏能贴钢化膜吗)

    曲面屏能贴钢化膜吗(手机曲面屏能贴钢化膜吗)

  • 一加8是5g吗(一加八有5g吗)

    一加8是5g吗(一加八有5g吗)

  • 手机qq无法上传照片(手机qq无法上传手机照片)

    手机qq无法上传照片(手机qq无法上传手机照片)

  • 为什么幻灯片不能放映(为什么幻灯片不能删除)

    为什么幻灯片不能放映(为什么幻灯片不能删除)

  • 度量计算机外部设备传输率的是什么(度量计算机外部数据传输速率的是)

    度量计算机外部设备传输率的是什么(度量计算机外部数据传输速率的是)

  • mtkp90处理器相等于骁龙多少(mtkheliog90t处理器)

    mtkp90处理器相等于骁龙多少(mtkheliog90t处理器)

  • 阿里tv助手怎么投屏(阿里tv助手怎么投屏照片)

    阿里tv助手怎么投屏(阿里tv助手怎么投屏照片)

  • 淘宝人生人物的眼镜怎么摘(淘宝 人生)

    淘宝人生人物的眼镜怎么摘(淘宝 人生)

  • oppoace有呼吸灯吗(opporenoace呼吸灯在哪)

    oppoace有呼吸灯吗(opporenoace呼吸灯在哪)

  • 钢筋平法是什么(钢筋平法是什么意思)

    钢筋平法是什么(钢筋平法是什么意思)

  • 手机密码打不开怎么办(oppo手机密码打不开)

    手机密码打不开怎么办(oppo手机密码打不开)

  • 苹果怎么发imessga(苹果怎么发imessege)

    苹果怎么发imessga(苹果怎么发imessege)

  • excel极差函数是什么(极差excel计算公式)

    excel极差函数是什么(极差excel计算公式)

  • 小米9水滴形状设置(更新后的小米9水滴屏在哪里设置?)

    小米9水滴形状设置(更新后的小米9水滴屏在哪里设置?)

  • 消息记录怎么恢复(怎样找回消息记录)

    消息记录怎么恢复(怎样找回消息记录)

  • 手机在线和4g在线有什么区别(手机在线和4g在线和wifi在线有什么区别)

    手机在线和4g在线有什么区别(手机在线和4g在线和wifi在线有什么区别)

  • 电脑怎么截图(电脑怎么截图 操作方法)

    电脑怎么截图(电脑怎么截图 操作方法)

  • 冷风机比空调省电吗(冷风机费电还是空调费电)

    冷风机比空调省电吗(冷风机费电还是空调费电)

  • OpenAI创始人:GPT-4的研究起源和构建心法(openai创始人阿尔特曼 取向)

    OpenAI创始人:GPT-4的研究起源和构建心法(openai创始人阿尔特曼 取向)

  • 无需公网IP,远程连接SQL Server数据库【内网穿透】(没有公网ip如何实现外网访问路由器)

    无需公网IP,远程连接SQL Server数据库【内网穿透】(没有公网ip如何实现外网访问路由器)

  • 设计印刷合同
  • 季度申报残保金怎么填写
  • 工资薪金所得和全年一次性奖金
  • 一般纳税人如何抵扣进项税
  • 外购货物应抵扣的进项税额税率
  • 进项税当月申报怎么申报
  • 内含增长率的推导
  • 客户为了凑整多打的款计入什么科目?
  • 进项税额转出是不可以抵扣吗
  • 企业所得税弥补亏损明细表怎么填写
  • 月末结转增值税附加税的账务处理
  • 财税[2010]121号中的宗地容积率指的是什么?
  • 集团内部拆借资金
  • 高速支付宝支付如何开发票
  • 一般纳税人转小规模怎么办理
  • 餐饮发票忘记作废也没冲红怎么处理?
  • 员工培训费应该怎么算
  • 上月开的发票本月作废怎么处理
  • 小规模纳税人销售收入会计分录
  • 库存商品转在建工程摘要怎么写
  • 企业是核定征收还是查账征收怎么查
  • 其他收益科目核算
  • 进货折让会计分录
  • 视同销售有哪些?
  • 评估报告怎么算合法
  • 模具维修费做什么费用
  • mac dash
  • 电商平台第三方服务
  • safe software
  • 纳税人转让不动产增值税征收管理暂行办
  • wordpress注册界面
  • 职工教育经费的列支范围
  • 魁北克老城区景点
  • win11 退回
  • imu模型
  • php遍历数组使用的是
  • 简易计税适用什么类型企业
  • 税款返还 分录
  • 建筑行业预交增值税怎么结转
  • java初学者教程
  • 桥接模式例子
  • 土地补偿款有哪些款项
  • 公司没有车加油票怎么做账
  • 总账和明细账期间相同吗
  • 收到服务费的增值税发票
  • 用PostgreSQL数据库做地理位置app应用
  • db2自增函数
  • 企业所得税预缴申报表
  • 公司购车需要什么材料
  • 新准则下其他应收坏账
  • 现金流量表利息支出
  • 企业所得税季末从业人数
  • 金银首饰以旧换新会计处理
  • 资本公积金转增股本是利好吿
  • 长期股权投资亏损冲减顺序
  • 进销存怎么看
  • 如果收到现金抵押怎么办
  • 销售费属于期间费用
  • 同比增长率环比增长率怎么算
  • 小规模纳税人从三万到十万
  • 员工领备用金不还能起诉吗法院
  • 其他业务收入冲减应付账款
  • 资产减值损失包含
  • bios如何进去
  • xp从装系统
  • linux chakan
  • 进程管理器命令
  • scrollpane.setviewportview
  • js调用音频文件
  • ExtJs事件机制基本代码模型和流程解析
  • python的判断
  • JavaScript不支持ie
  • Node.js中的construct
  • linux删除文件语句
  • unity如何成一组
  • javascript要打开吗
  • jquery怎么给div赋值
  • ukey开票人是管理员改胃自己时只能开电子发票
  • 太平税务局电话
  • 地税注销需要什么资料
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设