本文實例爲你們分享了python讀寫json數據的具體代碼,供你們參考,具體內容以下python
案例:web
在web應用中經常用到json數據進行傳輸數據,本質上是字典類型數據轉換成字符串,經過字符串進行網頁傳輸,而後把接收到的字符串轉換成字典相似數據json
需求:實現字典轉換成字符串,字符串轉換成字典數據類型,寫入文件網絡
如何作?排序
一、明確dumps和dump的區別,dump的接口是文件,直接寫入文件,dumps把對應的數據類型轉換成字符串,loads 和dumps相反,load直接從文件中讀取文件並把數據轉換成對應的數據類型
二、先進行數據轉換,字符串做爲中間橋樑接口
#!/usr/bin/python3 import json def w_json(data): # 往文件中寫入json文件 with open('json_test.json', 'w') as wf: json.dump(data, wf) print('ok') def r_json(): # 讀取json文件 with open('json_test.json', 'r') as rf: data = json.load(rf) return data def chage_data(data): # 進行json數據轉換 try: # separators 會把對應符號先後的空格去掉,網絡傳輸中,空格沒有意義 # 還能夠經過sort_keys進行按字典能夠排序,字典纔有效,網絡傳輸通常都用json數據格式 return json.dumps(data, separators=[',', ':'], sort_keys=True) except Exception as e: print(e) return None if __name__ == '__main__': d = {'xiao_ming': 18, 'xiao_er': 50, 'xiao_san': 17, 'xu_xue': None, 'b_l':True} # d = [8, 2, 2, 7, 0, None, True] data = chage_data(d) if data: w_json(data) r_data = r_json() print('讀取的數據:', r_data)