標籤:字元 區別 讀取 讀取檔案 main 需求 json import sep
案例:
在web應用中常常用到json資料進行傳輸資料,本質上是字典類型資料轉換成字串,通過字串進行網頁傳輸,然後把接收到的字串轉換成字典類似資料
需求:實現字典轉換成字串,字串轉換成字典資料類型,寫入檔案
如何做?
- 明確dumps和dump的區別,dump的介面是檔案,直接寫入檔案,dumps把對應的資料類型轉換成字串,loads 和dumps相反,load直接從檔案中讀取檔案並把資料轉換成對應的資料類型
- 先進行資料轉換,字串作為中間橋樑
#!/usr/bin/python3import jsondef 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 datadef 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)
pythhon_如何讀取json資料