五周一次课(11月13日)python
1、json的使用web
Json简介:Json,全名 JavaScript Object Notation,是一种轻量级的数据交换格式。Json最普遍的应用是做为AJAX中web服务器和客户端的通信的数据格式。如今也经常使用于http请求中,因此对json的各类学习,是天然而然的事情。而咱们将一下咱们平时工做中最经常使用的两种方式。数据库
1. json类型和python数据的转换json
1.1 json.dumps()将python对象编码转化成json字符串。服务器
import json m = {'success': True, 'message': 'hello'} json_str = json.dumps(m) print(json_str) print(type(json_str))
结果:ide
{"message": "hello", "success": true} <type 'str'>
解释:函数
Data是一个python数据字典,最后经过json.dumps()函数把data转换成字符串的形式。学习
除了字典,python还有不少数据对象,以下列出python对象经过dumps()函数转换后的对应关系:编码
Pythonspa |
JSON |
dict |
object |
list, tuple |
array |
str, unicode |
string |
int, long, float |
number |
True |
true |
False |
false |
None |
null |
1.2 json.loads()将json字符串解码成python对象。
在工做中,不少状况是别人给你提供的接口就是json字符串形式的。好比:你在数据库中查到的数据,返回结果是一个json的字符串的形式,这你就须要本身把这些json字符串转换成json对象。
import json jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}' text = json.loads(jsonData) print text print(type(text))
结果:
{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4} <type 'dict'>
解释:
经过json.loads方法把json字符串转换成python的数据字典。
2 文件和json之间的转换
2.1 json.dump()
import json jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}' f = open('a.txt', 'w') json.dump(jsonData,f) f.close()
结果:
生成a.txt文件,内容以下:"{\"a\":1,\"b\":2,\"c\":3,\"d\":4,\"e\":5}"
解释:
json.dump()能够把json数据直接写入到文件中。
2.2 json.load()
import json jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}' f = open('a.txt', 'w') json.dump(jsonData, f) f.close() aa = open('a.txt', 'r') dict11 = json.load(aa) print(dict11) print(type(dict11))
结果:
{"a":1,"b":2,"c":3,"d":4,"e":5} <type 'unicode'>
解释:
json.load()把文件内容转换成unicode数据类型返回