Python如何處理JSON數(shù)據(jù)詳解
什么是JSON?
- JSON是一種輕量級(jí)的數(shù)據(jù)交互格式,采用完全獨(dú)立于編程語(yǔ)言的文本格式來(lái)存儲(chǔ)和表示數(shù)據(jù)。和xml相比,它更小巧,但描述能力卻不差,更適合于在網(wǎng)絡(luò)上傳輸數(shù)據(jù)。
- JSON是一種有著特殊格式的字符串,格式與對(duì)象或者數(shù)組是非常類似的,只不過(guò)屬性名是帶雙引號(hào)的。
- JSON用于對(duì)象和數(shù)組的序列化。(序列化:格式轉(zhuǎn)換)用于對(duì)象和數(shù)組與字符串進(jìn)行相互轉(zhuǎn)換。
JSON作用
與 XML一樣,它是格式化數(shù)據(jù)的一種方式。Web 應(yīng)用程序使用這種格式的數(shù)據(jù)來(lái)相互通信。
為什么使用JSON

- JSON.stringify(對(duì)象) stringify:字符串化,將對(duì)象字符串化
- JSON.parse(字符串) parse:解析,將字符串解析為對(duì)象
在數(shù)據(jù)保存,數(shù)據(jù)傳輸過(guò)程中,不允許操作對(duì)象,只允許操作字符串。需要將對(duì)象轉(zhuǎn)換為字符串。
在程序計(jì)算,運(yùn)算過(guò)程中,操作字符串比較麻煩,會(huì)將字符串轉(zhuǎn)換為對(duì)象。
JSON的使用
Python3 中可以使用 json 模塊來(lái)對(duì) JSON 數(shù)據(jù)進(jìn)行編解碼,它包含了兩個(gè)函數(shù):
- json.dumps(): 對(duì)數(shù)據(jù)進(jìn)行編碼。
- json.loads(): 對(duì)數(shù)據(jù)進(jìn)行解碼。

Python 編碼為 JSON 類型轉(zhuǎn)換對(duì)應(yīng)表:

JSON 解碼為 Python 類型轉(zhuǎn)換對(duì)應(yīng)表:

示例代碼
import json
# Python 字典類型轉(zhuǎn)換為 JSON 對(duì)象
data1 = {
'no': 1,
'name': 'C君莫笑',
'url': 'https://blog.csdn.net/qq_34623621?type=blog'
}
json_str = json.dumps(data1)
print("Python 原始數(shù)據(jù):", repr(data1))
print("JSON 對(duì)象:", json_str)
# 將 JSON 對(duì)象轉(zhuǎn)換為 Python 字典
data2 = json.loads(json_str)
print("data2['name']: ", data2['name'])
print("data2['url']: ", data2['url'])
執(zhí)行以上代碼輸出結(jié)果為

如果你要處理的是文件而不是字符串,你可以使用 json.dump() 和 json.load() 來(lái)編碼和解碼JSON數(shù)據(jù)。
例如:
# 寫入 JSON 數(shù)據(jù)
with open('data.json', 'w') as f:
json.dump(data, f)
# 讀取數(shù)據(jù)
with open('data.json', 'r') as f:
data = json.load(f)
最后
本章給大家介紹了Python中處理Json數(shù)據(jù)。很重要的內(nèi)容,但是初學(xué)者很容易過(guò)分鉆研,實(shí)則沒(méi)什么必要,json在很多地方有很重要的應(yīng)用,如果你的項(xiàng)目中用到了它,別忘了python中存在json這個(gè)很方便的工具。
到此這篇關(guān)于Python如何處理JSON數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python處理JSON數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python隨機(jī)生成均勻分布在單位圓內(nèi)的點(diǎn)代碼示例
這篇文章主要介紹了Python隨機(jī)生成均勻分布在單位圓內(nèi)的點(diǎn)代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11
Python解析Excle文件中的數(shù)據(jù)方法
今天小編就為大家分享一篇Python解析Excle文件中的數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
基于jupyter代碼無(wú)法在pycharm中運(yùn)行的解決方法
這篇文章主要介紹了基于jupyter代碼無(wú)法在pycharm中運(yùn)行的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
如何利用Python實(shí)現(xiàn)一個(gè)論文降重工具
文章去重(或叫網(wǎng)頁(yè)去重)是根據(jù)文章(或網(wǎng)頁(yè))的文字內(nèi)容來(lái)判斷多個(gè)文章之間是否重復(fù),下面這篇文章主要給大家介紹了關(guān)于利用Python實(shí)現(xiàn)論文降重工具的相關(guān)資料,需要的朋友可以參考下2021-07-07
Python實(shí)現(xiàn)修改字體字形和提取矢量數(shù)據(jù)
字體設(shè)計(jì)與分析是NLP和視覺(jué)領(lǐng)域的交叉應(yīng)用,而**fontTools** 是一款強(qiáng)大的Python庫(kù),可以讓我們直接操作字體文件的底層結(jié)構(gòu),本文將通過(guò)兩個(gè)實(shí)用函數(shù),展示如何修改特定字形和提取所有字形的矢量數(shù)據(jù),幫助開發(fā)者快速上手字體編輯與分析2025-06-06
Python解決兩個(gè)整數(shù)相除只得到整數(shù)部分的實(shí)例
今天小編就為大家分享一篇Python解決兩個(gè)整數(shù)相除只得到整數(shù)部分的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
Python實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)采集新型冠狀病毒數(shù)據(jù)實(shí)例
在本篇文章里小編給大家整理了關(guān)于Python實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)采集新型冠狀病毒數(shù)據(jù)實(shí)例內(nèi)容,有需要的朋友們可以學(xué)習(xí)參考下。2020-02-02
Python利用PyPDF2庫(kù)實(shí)現(xiàn)輕松提取PDF文本
ython中的PyPDF2庫(kù)是一個(gè)非常有用的工具,無(wú)論您是需要分析PDF文檔中的內(nèi)容還是需要在文檔中搜索特定的信息,PyPDF2都可以幫助您輕松實(shí)現(xiàn)這些任務(wù),下面我們就來(lái)學(xué)習(xí)一下如何利用PyPDF2提取PDF文本吧2023-09-09

