JSON是用于数据交换的轻量级数据格式,可以很容易地被人类读取和写入,也可以由机器轻松解析和生成。它是一种完全独立于语言的文本格式。为了处理JSON数据,Python有一个名为的内置包json

示例: s ='{“ id”:01,“ name”:“ Emily”,“ language”:[“ C ++”,“ Python”]}'

JSON的语法被视为JavaScript语法的子集,包括以下内容:

  • 名称/值对:代表数据,名称后跟':'(冒号),名称/值对以逗号分隔。

  • 大括号:容纳对象。

  • 方括号:保留由(,)分隔的值的数组。

键/名称必须是带双引号的字符串,值必须是以下类型的数据类型:

  • Str

  • 列表

  • 对象(JSON对象)

  • 数组

  • 布尔型

  • 空值

例: {   “员工”:[      {         “ id”:“ 01”,         “ name”:“ Amit”,         “部门”:“销售”      },      {         “ id”:“ 04”,         “ name”:“ sunil”,         “部门”:“ HR”      }   ]}

解析JSON(从JSON转换为Python)

json.loads() 方法可以解析json字符串,结果将是Python字典。

句法:

json.loads(json_string)

例:

# Python program to convert JSON to Python     import json   # JSON string employee ='{"id":"09", "name": "Nitin", "department":"Finance"}'  # Convert string to Python dict employee_dict = json.loads(employee) print(employee_dict)   print(employee_dict['name']) 

输出:

{'id':'09','部门':'财务','名称':'Nitin'}尼丁

Python读取JSON文件

json.load()方法可以读取包含JSON对象的文件。考虑一个名为employee.json的文件,其中包含一个JSON对象。

句法:

json.load(file_object)

示例:假设JSON如下所示。

我们想读取该文件的内容。下面是实现。

# Python program to read # json file       import json    # Opening JSON file f = open('data.json',)    # returns JSON object as  # a dictionary data = json.load(f)    # Iterating through the json # list for i in data['emp_details']:     print(i)    # Closing file f.close()

输出:

在这里,我们已使用该open()函数读取JSON文件。然后,使用json.load()提供给我们一个名为data的字典的方法来解析文件。

从Python转换为JSON

json.dumps() 方法可以将Python对象转换为JSON字符串。

句法:

json.dumps(dict,indent)

它带有两个参数:

  • dictionary –字典的名称,应将其转换为JSON对象。

  • 缩进–定义缩进单位数

# Python program to convert # Python to JSON       import json    # Data to be written dictionary ={   "id": "04",   "name": "sunil",   "depatment": "HR"}    # Serializing json  json_object = json.dumps(dictionary, indent = 4) print(json_object)

输出:

{    “部门”:“ HR”,    “ id”:“ 04”,    “名称”:“ sunil”}

可以将以下类型的Python对象转换为JSON字符串:

  • 字典

  • 列表

  • 元组

  • 字符串

  • 整型

  • 浮动

  • True

  • False

  • NUll

Python对象及其等效的JSON转换:

将JSON写入文件

json.dump() 方法可用于写入JSON文件。

句法:

json.dump(dict,file_pointer)

它包含2个参数:

  • dictionary –字典的名称,应将其转换为JSON对象。

  • 文件指针–在写入或追加模式下打开的文件的指针

# Python program to write JSON # to a file       import json    # Data to be written dictionary ={     "name" : "sathiyajith",     "rollno" : 56,     "cgpa" : 8.6,     "phonenumber" : "9976770500"}    with open("sample.json", "w") as outfile:     json.dump(dictionary, outfile)

输出:

上面的程序使用“ w”以写入模式打开一个名为sample.json的文件。如果文件不存在,将创建该文件。Json.dump()会将字典转换为JSON字符串,并将其保存在文件sample.json中。

推荐阅读

  • 在Python中初始化:您需要了解的一切

  • 建立数据驱动,关键字驱动和混合Selenium框架这些你了解吗

  • 如何在Selenium WebDriver中查找元素?(二)

  • 如何在Selenium WebDriver中查找元素?(一)

  • python之函数基础

  • python接口测试—get请求

python 追加到字典_使用Python读取,写入和解析JSON相关推荐

  1. python有道字典_利用python实现命令行有道词典的方法示例

    前言 由于一直用Linux系统,对于词典的支持特别不好,对于我这英语渣渣的人来说,当看英文文档就一直卡壳,之前用惯了有道词典,感觉很不错,虽然有网页版的但是对于全站英文的网页来说并不支持.索性自己实现 ...

  2. python 追加到字典_扫描器篇(三)之python编写基于字典的网站目录探测脚本

    工具原理: 通过读取字典获取内容,拼接url执行get http请求获取 响应状态码,根据状态码判断目录文件资源是否存在 1 2 思路: 工具命令行参数获取 1 字典读取 1 多线程访问 1 状态码获 ...

  3. python单词词频字典_用python实现词频分析+词云

    2020.05.13更新:大家点个赞再收藏吧(点赞后观看,养成好习惯)TAT 如你所见.文章标题图是以 周杰伦的百度百科 词条为分析文档,以 周杰伦超话第一的那张图+PPT删除背景底色 为词频背景进行 ...

  4. python怎么打印字典_在python中打印字典的原始输入顺序

    如何按照我设置的原始顺序打印出我的字典? 如果我有这样的字典: smallestCars = {'Civic96': 12.5, 'Camry98':13.2, 'Sentra98': 13.8} 我 ...

  5. python有道字典_【Python】Python利用有道翻译开发API应用示例

    Python源码是关于Python利用有道翻译开发API应用示例.这是一个很有意思又简单的API应用练习题,方法中用到了有道词典开放API应用,合成的类似于命令行词典应用Python小程序.功能简单, ...

  6. python创建学生字典_用python创建简单字典

    person1 wine2 person1 wine1 person2 wine1 person2 wine2 person2 wine3 person2 wine4 person2 wine5 以上 ...

  7. python创建复合字典_使用python创建嵌套字典

    我有一个csv格式的节点数据.我想为分析创建一个字典.我的数据看起来像Init node Term node Capacity 1 2 25900.20064 1 3 23403.47319 2 1 ...

  8. python多线程操作字典_在Python中使用带有线程的全局字典

    Dirk.. 52 假设CPython:是的,不是.从多个并发读/写请求不会破坏字典的意义上来说,从共享字典中获取/存储值实际上是安全的.这是由于实现维护的全局解释器锁("GIL" ...

  9. python如何调用字典_如何访问python字典里的值?(实例解析)

    今天这篇文章中我们来了解一下python之中的字典,在这文章之中我会对python字典访问进行说明,以及python使用.访问字典的实例分析.好了废话不多说,我们开始进入文章吧. 访问字典里面的值 把 ...

最新文章

  1. mysql 性能优化索引、缓存、分表、分布式实现方式。
  2. 2020年, video captioning论文汇总
  3. 导入导出 Oracle 分区表数据
  4. [systemd]systemd使用
  5. cmd文件 c语言的段,对于TMS320F2812的CMD文件的理解
  6. ASP.NET Literal控件用法
  7. 2016 版 Laravel 系列入门教程(三)【最适合中国人的 Laravel 教程】
  8. GridView控件事件详解
  9. php pdo查询sqlserver,php pdo sqlserver分页sql的处理
  10. 2019年1月1日起,电商法实施、电子证照“国标”正式发布
  11. 用rhino做一个地球_2
  12. 国际直拨电话号码格式
  13. 制作u盘winpe启动盘_Ventoy启动盘制作工具,Win、Linux、PE多系统镜像装进同1个U盘...
  14. idea上移或下移一行
  15. Gateway 网关路由、断言、过滤
  16. C#获取屏幕的分辨率
  17. 排水管网信息系统、市政排水管网信息化智慧化管理
  18. 单片机控制电路的多图纸原理图和层次式设计
  19. Android 9.0 开关机动画流程分析
  20. 在DirectX9.0中使用Mesh

热门文章

  1. 章鱼扫描仪:Java构建工具和恶意软件
  2. java 代码风格_Java代码风格:最终决定
  3. 您准备好观看GraphQL了吗?
  4. 新的JDK 11文件方法isSameContent()
  5. moxy json介绍_MOXy的@XmlVariableNode – JSON模式示例
  6. rete_Rete之外的生活– RIP Rete 2013 :)
  7. qr码生成_从Java程序生成QR码图像
  8. 什么是Spring Boot以及为什么它是用于创建微服务的首选框架
  9. coherence安装_在Oracle Coherence中分发Spring Bean
  10. FlexyPool如何同时支持连接代理和装饰器