溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

使用Python怎么對(duì)json文件進(jìn)行讀寫(xiě)

發(fā)布時(shí)間:2021-04-07 17:36:10 來(lái)源:億速云 閱讀:273 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這篇文章給大家介紹使用Python怎么對(duì)json文件進(jìn)行讀寫(xiě),內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

首先說(shuō)讀json文件

在進(jìn)行json操作之前,首先要了解json的格式,分辨json文件。

json文件格式一般有兩種:

第一種:每行一個(gè)json類(lèi)似于以下這種形式:

["name":"Tony","age":"21","hobbies" : ["basketball","tennis"]]
["name":"Lisa","age":"20","hobbies" : ["sing","dance"]]

這種json格式是每一行是一個(gè)json,行與行之間沒(méi)有關(guān)聯(lián)。

第二種:一個(gè)文件寫(xiě)成一個(gè)大的json

[
{"name":"Tony","age":"21","hobbies" : ["basketball","tennis"]},
{"name":"Lisa","age":"20","hobbies" : ["sing","dance"]}
]

這種格式每條記錄之間用,連接。

下面讀取json文件,利用json.load函數(shù)

f = open('/home/codergray/company/test_2.json')
#將json格式的數(shù)據(jù)映射成list的形式
t = json.load(f)

所以t是一個(gè)list,按照正常訪問(wèn)list的方法訪問(wèn)就可以。

str = t[0]['name']
print str

輸出:

Tony

以上面的例子為例,訪問(wèn)t[0]也就是第一條json記錄[‘name']代表name字段,因而就讀出了值“Tony”

寫(xiě)json文件

寫(xiě)json一般是上文提到的json格式的第二種格式,也就是整體是一個(gè)大的json。

舉個(gè)例子:

f = open('result.json','w')
result = []
temp = {}
temp['name'] = 'Tony'
temp['age'] = '21'
tamp['hobbies'] = ['basketball','tennis']
result.append(temp)
f.write(json.dumps(result,ensure_ascii=False))

通過(guò)以上代碼就將一個(gè)json寫(xiě)進(jìn)了result.json文件,當(dāng)然這個(gè)大json里面只有一條記錄,如果想插入多條記錄可以利用循環(huán)。json.dumps方法可以看作是json.load的逆過(guò)程,將list的數(shù)據(jù)格式轉(zhuǎn)化為json存在json文件中。

關(guān)于使用Python怎么對(duì)json文件進(jìn)行讀寫(xiě)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI