json

来源:互联网 发布:oracle数据库出现问题 编辑:程序博客网 时间:2024/04/30 07:57

Json简介:Json,全名 JavaScript Object Notation,是一种轻量级的数据交换格式。Json最广泛的应用是作为AJAX中web服务器和客户端的通讯的数据格式 
在线解析网址:https://www.json.cn/

json 四种方法: 
处理文件: 
json load 
json dump

处理字符串: 
json loads 
json dumps

load 或者loads 加载,就是把json转化成其他格式,字符串或者文件相关 
dump或者dumps 颠倒,就是把其他对象或者格式,转化成json格式 
json类型和python数据的转换

json.dumps()将python对象编码转化成json字符串

import jsona = {'name':'chao','age':26,'address':'hangzhou'}print (type(a))m = json.dumps(a)print mprint (type(m))n = json.loads(m)print nprint (n['name'])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

type ‘dict’ 
{“age”: 26, “name”: “chao”, “address”: “hangzhou”} 
type ‘str’ 
#这里的u代表着unicode编码格式 
{u’age’: 26, u’name’: u’chao’, u’address’: u’hangzhou’} 
chao

Data是一个python数据字典,最后通过json.dumps()函数把data转换成字符串的形式。除了字典,python还有很多数据对象,如下列出python对象通过dumps()函数转换后的对应关系:

Python JSON 
dict object 
list, tuple array 
str, unicode string 
int, long, float number 
True true 
False false 
None null

json.loads()将json字符串解码成python对象

通过json.loads方法把json字符串转换成python的数据字典。

import jsonjsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}'text = json.loads(jsonData)print textprint(type(text))
  • 1
  • 2
  • 3
  • 4
  • 5

{u’a’: 1, u’c’: 3, u’b’: 2, u’e’: 5, u’d’: 4}

文件和json之间的转换 
load 从文件中读取数据,并且将文件转换为json数据 
dump 就是把json写入文件中

import jsonjsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}'#写with open('json.txt','w')as f:    json.dump(jsonData,f)
  • 1
  • 2
  • 3
  • 4
  • 5

在当前目录下生成一个json.txt文件内容为 
“{\”a\”:1,\”b\”:2,\”c\”:3,\”d\”:4,\”e\”:5}” 
#读

import jsonwith open('json.txt','r')as fd:#json.load()把文件内容转换成unicode数据类型返回    r = json.load(fd)    print r    print (type(r))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

{“a”:1,”b”:2,”c”:3,”d”:4,”e”:5}