Python解析Json以及Python中字典和Json的區(qū)別

Python的字典和JSON在表現(xiàn)形式上非常相似


實(shí)際上JSON就是Python字典的字符串表示

但是字典作為一個(gè)復(fù)雜對(duì)象是無(wú)法直接轉(zhuǎn)換成定義它的代碼的字符串

Python有一個(gè)叫simplejson的庫(kù)可以方便的完成JSON的生成和解析

這個(gè)包已經(jīng)包含在Python2.6中

就叫json 主要包含四個(gè)方法:

dump和dumps(從Python生成JSON)

load和loads(解析JSON成Python的數(shù)據(jù)類型)

dump和dumps的唯一區(qū)別是dump會(huì)生成一個(gè)類文件對(duì)象

dumps會(huì)生成字符串,同理load和loads分別解析類文件對(duì)象和字符串格式的JSON


import json
dic = {
         'str': 'this is a string',
         'list': [1, 2, 'a', 'b'],
         'sub_dic': {
                       'sub_str': 'this is sub str',
                       'sub_list': [1, 2, 3]
                     },
         'end': 'end'
       }
json.dumps(dic)
#output:
#'{"sub_dic": {"sub_str": "this is sub str", "sub_list": [1, 2, 3]}, "end": "end", "list": [1, 2, "a", "b"], "str": "this is a string"}'


下面看下Python中字典和JS中Json的區(qū)別

這是Python中的一個(gè)字典


#這是Python中的一個(gè)字典
dic = {
         'str': 'this is a string',
         'list': [1, 2, 'a', 'b'],
         'sub_dic': {
                       'sub_str': 'this is sub str',
                       'sub_list': [1, 2, 3]
                     },
         'end': 'end'
       }
這是javascript中的一個(gè)JSON對(duì)象
//這是javascript中的一個(gè)JSON對(duì)象
json_obj = {
         'str': 'this is a string',
         'arr': [1, 2, 'a', 'b'],
         'sub_obj': {
                       'sub_str': 'this is sub str',
                       'sub_list': [1, 2, 3]
                     },
         'end': 'end'
       }


原文鏈接:Python解析Json以及Python中字典和Json的區(qū)別