python汇总json数据_python处理json总结

一、首先,了解下什么是JSON?

JSON:JavaScript Object Notation【JavaScript 对象表示法】

JSON 是一种轻量级的数据交换格式,完全独立于任何程序语言的文本格式。一般,后台应用程序将响应数据封装成JSON格式返回。

JSON的基本语法如下:

JSON名称/值对。JSON 数据的书写格式是:名称/值对。名称/值对包括字段名称(在双引号中),然后着是一个冒号(:),最后是值。

JSON最常用的格式是对象的键值对:

key只能是string, value可以是 object、array、string、number、true/false、null

2093261-20200709153438137-1428198320.png

键通过双引号包裹,后面跟冒号“:”,然后跟该键的值;

值可以是字符串、数字、数组等数据类型;

对象与对象之间用逗号隔开;

“{}”用来保存对象;

“[]”用来保存数组;

二、json跟python中的字典看起来很像,两者之间的区别?

1)json的key只能是字符串,dict的key可以是任何可hash的对象,例如:字符串、数字、元组等;

2)字典是一种数据结构,json是一种数据格式;字典有很多内置函数,有多种调用方法,而json是数据打包的一种格式,并不像字典具备操作性;

3)json的字符串强制用双引号,dict的字符串可以用单引号、双引号;

一般而言,我们会把json转化为python中的字典或者列表,再对其进行操作。

三、Python处理json的模块:json

Pythone3的标准库JSON模块,可以很方便的帮我们进行json数据的转换和处理,这里主要指序列化(json.dumps()、json.dump())和反序列化(json.loads()、json.load())。

序列化和反序列化:

将对象转换为可通过网络传输或可以存储到本地磁盘的数据格式(如:XML、JSON或特定格式的字节串)的过程称为序列化;反之,则称为反序列化。

常用的JSON模块方法:

json.dumps():将Python中的对象转换为JSON中的字符串对象

json.dump():将python对象转换成JSON字符串输出到fp流中。

json.loads():将JSON中的字符串对象转换为Python中的对象

json.load():读取包含json对象的文件。

2093261-20200709155420727-1879103094.png

实例:

把字典转换成json串

2093261-20200709155458220-343220267.png

Python解码JSON对象

2093261-20200709155517774-1502002332.png

读取json文件

import json

with open('test1.json') as f:

a = json.load(f)

print(a)

print(type(a))

输出:

{'sites': [{'name': '360', 'url': 'www.360.com'}, {'name': 'google', 'url': 'www.google.com'}, {'name': 'baidu', 'url': 'www.baidu.com'}]}

写入json文件

2093261-20200709155614155-1005068103.png

Python类型转换JSON类型的对应关系

2093261-20200709155642198-1036917340.png

json类型转换到Python的类型对照表

2093261-20200709155653413-790666541.png

文章转自吾非同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值