讀寫json文件


JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。它基於ECMAScript的一個子集。

JSON在python中分別由list和dict組成。

有兩個重要的包

  • Json模塊提供了四個功能:dumps、dump、loads、load
  • pickle模塊提供了四個功能:dumps、dump、loads、load

json dumps把數據類型轉換成字符串 dump把數據類型轉換成字符串並存儲在文件中  loads把字符串轉換成數據類型  load把文件打開從字符串轉換成數據類型

json是可以在不同語言之間交換數據的,而pickle只在python之間使用。json只能序列化最基本的數據類型,josn只能把常用的數據類型序列化(列表、字典、列表、字符串、數字、),比如日期格式、類對象!josn就不行了。而pickle可以序列化所有的數據類型,包括類,函數都可以序列化。

import json
test_dict = {'bigberg': [7600, {1: [['iPhone', 6300], ['Bike', 800], ['shirt', 300]]}]}
json_str = json.dumps(test_dict)    #dumps 將字典轉換成字符串
new_dict = json.loads(json_str)    #loads將字符串轉換成字典

寫入json文件

with open("../config/record.json","w") as f:
    json.dump(new_dict,f)

讀取json文件

#
with open("../config/record.json",'r') as load_f:
    load_dict = json.load(load_f)

#
with open("../config/record.json","w") as dump_f:
    json.dump(load_dict,dump_f)

注意

 #設置以utf-8解碼模式讀取文件,encoding參數必須設置,否則默認以gbk模式讀取文件,當文件中包含中文時,會報錯
f = open("Settings.json", encoding='utf-8') 

#寫入
with open('data.json', 'w') as json_file:
        json_file.write(json.dumps(data))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM