Python json模块

JSON是一种轻量级数据交换格式,一般API返回的数据大多是JSON、XML,如果返回JSON的话,将获取的数据转换成字典,方面在程序中处理
python2.6版本开始加入了JSON模块,python的json模块序列化与反序列化的过程分别是encoding和decoding。

 

encoding:把一个python对象编码转换成Json字符串。
decoding:把json格式字符串编码转换成python对象。

python3可以使用json模块对json数据进行编码解码,包含以下两个函数
json.dumps(): 对数据进行编码
json.loads(): 对数据进行解码

 

实例:

>>> import json
>>> data = {'num':100,'name':zhangsan}
>>> json_str = json.dumps(data)   ##对数据进行编码
>>> print("Python data: " ,data)
Python data: {'num': 100, 'name': 'zhangsan'}
>>> print("JSON object: " ,json_str)
JSON object: {"num": 100, "name": "zhangsan"}

 


使用json.load 将json编码的字符串转换成python数据结构
实例:
>>> data = {'num':100,'name':'zhangsan'}
>>> json_str=json.dumps(data)
>>> json_str
'{"num": 100, "name": "zhangsan"}'
>>> data2=json.loads(json_str)
>>> data2
{'num': 100, 'name': 'zhangsan'}

 

 

如果要处理的是文件而不是字符串,可以使用json.dump和json.load来处理数据

json.dump()存储,json.load读取

实例
json.dump()

import json
numbers = [2,3,5,7,11,13]

filename = 'numbers.json'
with open(filename,'w') as f_obj:
       json.dump(numbers,f_obj)   ##将number列表写入到number.json中

 

 

json.load()

 

import json

filename = 'numbers.json'
with open(filename) as f_obj:
      numbers = json.load(f_obj)

print(numbers)

 

转载于:https://www.cnblogs.com/kubernets/p/8966099.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值