python json串物件轉換

2021-08-21 03:24:02 字數 1246 閱讀 5604

python中json與物件間的轉換很方便,使用其自身帶的json庫即可完成,如下示例**

import json

# python 字典型別轉換為 json字串

blogs =

json_str = json.dumps(data)

print ("json 字串:", json_str)

#python json字串轉 字典(dict)型別

bloglist = json.loads(json_str)

但是我們往往從網上獲取到的json串的key沒有單引號或雙引號,這樣的json串使用json.loads轉換時會報錯,因此我們還需要給這樣的串新增上引號的函式,函式如下:

# 函式將這樣的字串

# ''

# 變為

# ''

defquote_keys_for_json

(self,json_str):

# """給鍵值不帶雙引號的json字串的所有鍵值加上雙引號。

quote_pat = re.compile(r'".*?"')

a = quote_pat.findall(json_str)

json_str = quote_pat.sub('@', json_str)

key_pat = re.compile(r'(\w+):')

json_str = key_pat.sub(r'"\1":', json_str)

assert json_str.count('@') == len(a)

count = -1

defput_back_values

(match):

nonlocal count

count += 1

return a[count]

json_str = re.sub('@', put_back_values, json_str)

return json_str

有時網路介面返回的json串中的字元,unicode編碼了,我們需要先對字串解碼,將其轉換為中文在轉換

# 返回的資料是unicode編碼,

# 中文都被解析成\u4e2d\u6587(中文)這類的字串了,

# 所以通過下面的方法將其轉換成中文

encodestr = jsonstr.encode('utf-8').decode('unicode_escape')

python json與字典物件互相轉換

改文章 1 importrequests 2 importjson 3 4 json.loads json str json字串轉換成字典 5 json.dumps dict 字典轉換成json字串 6 7 8 這是乙個ajax發起的get請求,獲取乙個json物件 9 r requests.get...

python json與str的轉換

python str轉json物件,需要用到json的loads函式 當字串是物件時用 json.loads str import json str j json.loads str 當字串是個檔案時用 json.load f import json import pandas as pd f op...

python json串中文亂碼問題

第一種 usr bin env python coding utf 8 import json dic abc 我愛你 bcd 你唉我 abc abc.decode utf 8 encode utf 8 print abc dic abc bcd print json.dumps dic,ensur...