如何使用python讀寫json文件

迷茫
發布: 2017-03-25 17:43:04
原創
1317 人瀏覽過

JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。它是基於ECMAScript的一個子集。 JSON採用完全獨立於語言的文字格式,但也使用了類似C語言家族的習慣(包括C、C++、Java、JavaScript、Perl、Python等)。這些特性使JSON成為理想的資料交換語言。易於人閱讀和編寫,同時也易於機器解析和生成(一般用於提升網路傳輸速率)。

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

這是用於序列化的兩個模組:

  • json: 用於字串和python資料型別間進行轉換

  • #pickle: python特有的類型和python的資料類型間進行轉換

Json模組提供了四個功能:dumps、dump、loads、load

pickle模組提供了四個功能:dumps、dump、loads、load

json dumps把資料型別轉換成字串dump把資料型別轉換成字串並儲存在檔案中  loads把字串轉換成資料型別  load把檔案開啟從字串轉換成資料型別

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

範例:

dumps:將python中的字典轉換為字串

import json

test_dict = {'bigberg': [7600, {1: [['iPhone', 6300], ['Bike', 800], ['shirt', 300]]}]}
print(test_dict)
print(type(test_dict))
#dumps 将数据转换成字符串
json_str = json.dumps(test_dict)
print(json_str)
print(type(json_str))
登入後複製

#loads: 將字串轉換為字典

new_dict = json.loads(json_str)
print(new_dict)
print(type(new_dict))
登入後複製

dump: 將資料寫入json檔案中

with open("../config/record.json","w") as f:
json.dump(new_dict,f)
print("加载入文件完成...")
登入後複製

load:把檔案打開,並且把字串變換為資料型別

with open("../config/record.json",'r') as load_f:
load_dict = json.load(load_f)
print(load_dict)
load_dict['smallberg'] = [8200,{1:[['Python',81],['shirt',300]]}]
print(load_dict)
with open("../config/record.json","w") as dump_f:
json.dump(load_dict,dump_f)
登入後複製

以上是如何使用python讀寫json文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板