我使用python3可以處理有中文的json文件
讀寫json文件:http://python3-cookbook.readthedocs.org/zh_CN/latest/c06/p02_read-write_json_data.html
首先 import json
load() loads()
dump() dumps()
壹、從文件:
json轉Python數據結構:json.load
fo = open('data.json', 'r')
data = json.load(fo)
python數據結構轉json:json.dump
fo = open('data.json', 'r')
json.dump(data, fo)
二、python字符串和json之間互相轉換:
json_str = json.dumps(data)
data = json.loads(json_str)
三、json格式化輸出:
1、格式化打印 pprint
2、格式化輸出
在編碼JSON的時候,還有壹些選項很有用。 如果妳想獲得漂亮的格式化字符串後輸出,可以使用json.dumps() 的indent參數。
它會使得輸出和pprint()函數效果類似。比如:
print(json.dumps(data, indent=4))
fo = open('data.json', 'r')
json.dump(data, fo, indent=4)
四、帶有中文的json轉換:
jsondata= json.dumps( dics, ensure_ascii = False, indent = 4 )
在dumps方法中加入參數ensure_ascii = False,可以使dic中的中文正常轉換
2、若python的數據中既有普通字符,又有Unicode字符串,上述方法則不行,還要在後面加上encode('utf-8')
手動轉換成utf-8編碼
jsondata= json.dumps( dics, ensure_ascii = False, indent = 4 ).encode('utf-8')