JSON文件讀寫操作詳解

JSON介紹

JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於 ECMAScript (歐洲計算機協會制定的js規範)的一個子集,採用完全獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成爲理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網絡傳輸效率。[百度百科]

JSON基本語法

  • JSON 規定字符集是UTF-8,字符串必須使用"",數據的名稱也必須使用"",不能使用單引號 ''
  • 數組或對象的最後一個成員,不能加逗號

數據

JSON 數據的書寫格式是:“名稱/值”對,其中值可以是:數字(整數或浮點數)、字符串(在雙引號中)、邏輯值(true 或 false)、數組(在方括號中)、對象(在花括號中)、null,數據之間用逗號分隔

"csdn" : "John",
"age" : 23

對象

JSON 對象在花括號中書寫,可以包含多個名稱/值對數據。

{
	"csdn" : "John",
	"age" : 23
}

數組

JSON 數組在方括號中書寫,可包含多個對象,對象之間逗號分隔。

[
	{
		"csdn" : "John",
		"age" : 23
	},
	{
		"major" : "cs",
		"years" : 4
	}
]

JSON文件寫入

json.dumps(param)將json數據對象轉換爲文本字符串的函數,其函數名是dump string 的縮寫,意思是輸出字符串,其參數param必須要是json對象。json對象–>字符串str

import json
me = [
		{
			"csdn" : "John",
			"age" : 23
		},
		{
			"major" : "cs",
			"years" : 4
		}
	 ]
with open('me.json','w') as file:
	file.write(json.dumps(me, indent=2))#indent爲了縮進

在這裏插入圖片描述

JSON文件讀取

json.loads(param)將文本字符串轉換爲json對象的函數,其函數名是load string 的縮寫,意思是加載字符串。字符串str–>json對象

import json
with open('me.json','r') as file:
    str = file.read()
    data = json.loads(str)
    print(data)
    print(type(data))#python列表的類型

在這裏插入圖片描述
字符串str–>json對象

import json
str='''[
		{
			"csdn" : "John",
			"age" : 23
		},
		{
			"major" : "cs",
			"years" : 4
		},
		{
			"major" : "計算機科學與技術",
			"years" : "全日制4年"
		}		
	   ]
'''
print(type(str))#string
data = json.loads(str)
print(data)
print(type(data))#python列表的類型

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章