python如何讀寫json數據

本文實例爲你們分享了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)
相關文章
相關標籤/搜索