什么是JSON?

网上对JSON有很多教程,有各种各样的解释。一言以蔽之,JSON本质上是一种语法,这种语法的作用是把数据以字符串的形式存储、传递,多用于Web编程。

JSON的典型示例

'{"employees": [

{"firstName":"Bill" , "lastName":"Gates"},

{"firstName":"George" , "lastName":"Bush"},

{"firstName":"Thomas" , "lastName":"Carter"}

]

}'

从Python的角度理解JSON,JSON的主要构成要素只有两个:字典,字符串。大家可以把JSON理解为字符串化的字典。

以上面的典型示例为例子,"employees"为key, 后面的由3个字典组成的列表就为Value. 这就构成了一份JSON数据.

利用Packge json解析、生成JSON

利用json的loads和dumps两个函数,基本可以满足需求。我们假设上述JSON典型示例字符串为Json_str,话不多说,直接上代码:

>>> importjson>>> Json_afterdecode =json.loads(Json_str)>>> print(type(Json_afterdecode))

>>>Json_afterdecode

{'employees': [{'lastName': 'Gates', 'firstName': 'Bill'}, {'lastName': 'Bush', 'firstName': 'George'}, {'lastName': 'Carter', 'firstName': 'Thomas'}]}>>> Json_afterdecode["employees"][0]["lastName"]'Gates'

>>> Json_afterencode =json.dumps(Json_afterdecode)>>> print(type(Json_afterencode))

>>>Json_afterencode'{"employees": [{"lastName": "Gates", "firstName": "Bill"}, {"lastName": "Bush", "firstName": "George"}, {"lastName": "Carter", "firstName": "Thomas"}]}'

优雅的输出

很多时候我们需要把JSON放到文件里,变成JSON文件(比如需要用JSON文件存储一些配置信息时),但是一行字符串丑的不行,怎么办?

json.dumps(, sort_keys=True, indent=4)),可以实现排序和缩进

>>> Json_afterencode_elegant = json.dumps(Json_afterdecode, sort_keys=True, indent=4)>>> print(Json_afterencode_elegant)

{"employees": [

{"firstName": "Bill","lastName": "Gates"},

{"firstName": "George","lastName": "Bush"},

{"firstName": "Thomas","lastName": "Carter"}

]

}

瞧,这样不仅看起来美观,也便于其他人往Json里填充数据。

当我们需要从JSON文件里读取信息时,直接用下面的路径就能直接得到JSON数据了。

>>> Json_afterdecode = json.loads(open("JSON文件路径","r").read())

参考链接:

RUNOOB的JSON教程: http://www.runoob.com/json/json-tutorial.html

python上手度_Python快速上手JSON指南相关推荐

  1. Python学习笔记---day02快速上手

    day02快速上手 课程目标:学习Python最基础的语法知识,可以用代码快速实现一些简单的功能 课程概要: 初识编码(密码本) 编程体验 输出 初识数据类型 变量 注释 输入 条件语句 1. 编码 ...

  2. 如何快速上手mysql_如何快速上手数据库操作?

    原标题:如何快速上手数据库操作? 今天要介绍的这个python第三方库非常厉害,完美操作各种数据库. 名字叫records,在网上很少有这个库的相关资料,但是在开源社区可是很火热的哦. 如果这还不能打 ...

  3. python类型转换异常_python知识:json格式文本;异常处理;字符串处理;unicode类型和str类型转换...

    python进程中的实例和json格式的字符串之间的映射关系是非常直接的,相当于同一个概念被编码成不同的表示: stream in json form ----json.loads(str)----- ...

  4. python输入hello*3_Python快速上手: hello world

    类Unix系统是默认安装了Python的,在终端输入Python就可以进入Python的解释器了. Windows在官网下载安装包,安装后,把安装的目录python.exe所在的目录(eg:D:/Py ...

  5. python在线实战_Keras快速上手:基于Python的深度学习实战

    领取成功 您已领取成功! 您可以进入Android/iOS/Kindle平台的多看阅读客户端,刷新个人中心的已购列表,即可下载图书,享受精品阅读时光啦! - | 回复不要太快哦~ 回复内容不能为空哦 ...

  6. python装饰器_python装饰器完全指南之一

    设我们有一组函数,它们有共同的错误处理方法,比如打印日志和记录审计信息等.很显然,在每一个函数中都重复这些逻辑是不恰当的,它们应该被提炼到一个函数里,在这个函数的保护下,再调用我们的业务逻辑处理功能. ...

  7. python 查找算法_python快速查找算法应用实例

    文实例讲述了Python快速查找算法的应用,分享给大家供大家参考. 具体实现方法如下: import random def partition(list_object,start,end): rand ...

  8. python解不定积分_python快速求解不定积分和定积分

    欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列博客. 基本概念 定积分的定义如下: 不定积分定义如下: 如果想了解更 ...

  9. python r转义_Python快速入门系列之二:还学不会我直播跪搓衣板

    Python作为一个,目前最火的编程语言之一,已经渗透到了各行各业.它易学好懂,拥有着丰富的库,功能齐全.人生苦短,就用Python. 这个快速入门系列分为六篇,包含了Python大部分基础知识,每篇 ...

最新文章

  1. 【原】Java学习笔记030 - 异常
  2. 机器学习第五篇:详解决策树-CART算法
  3. python字典dragonloot_Python 字典与列表使用实例
  4. 80--查询分组关联属性
  5. 使用visual studio 2013读取.mat文件
  6. WordPress 极简约风格smalls-one主题
  7. 第2节 mapreduce深入学习:12、reducetask运行机制(多看几遍)
  8. 2020h黑苹果 y7000p_黑苹果安装教程Y7000P
  9. 如何下载微信支付证书(API证书)
  10. 【正点原子STM32连载】第三章 开发环境搭建 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  11. 最新米酷6.26影视源码+解析接口+步骤
  12. 科大讯飞语音合成使用小记
  13. shenyu2.5.0对restful的path中文不支持,400错误解决
  14. Chrome浏览器下载文件名乱码
  15. 关于Pascal和二项式系数
  16. 7-1 计算平均成绩 (15分)
  17. Java终结者和捷安特pp_终结者致命的弱点-我会怎么对付终结者
  18. 勘探重力实验matlab,MATLAB在重力图制作中的应用
  19. 用python搭建 百万答题 、自动百度搜索答案
  20. 将本地镜像发布到阿里云仓库

热门文章

  1. 日本尔必达在苏州建12英寸存储芯片工厂
  2. C语言中常见的置位操作(置0或置1)转载
  3. 在Linux中安装QQ2008
  4. “考试包过”?买考研真题答案?买“内部资料”?这些都是谣言!
  5. 第一次试试自己搭tz
  6. python 知识大全_Python基础知识汇总
  7. 微服务(四)—— 用户模块(backend-user)
  8. 完美解决CISCO PACKET TRACER 7.2需要账号登录的登录问题(转载)
  9. pyautogui实现LOL宝典自动领取
  10. 2015移动开发之iOS回顾