今天小編就為大家?guī)硪黄猵ython中JSON的使用方法的文章。小編覺得挺實用的,為此分享給大家做個參考。一起跟隨小編過來看看吧。
在武岡等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、成都網(wǎng)站制作 網(wǎng)站設(shè)計制作按需制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,外貿(mào)網(wǎng)站建設(shè),武岡網(wǎng)站建設(shè)費用合理。
1. 概述
JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,它具有簡潔、清晰的層次結(jié)構(gòu),易于閱讀和編寫,還可以有效的提升網(wǎng)絡(luò)傳輸效率。Python 標(biāo)準(zhǔn)庫的 json 模塊可以用來處理 JSON 格式數(shù)據(jù)的基本操作。
2. 使用
json 模塊主要提供了 dump、dumps、load、loads 方法對 JSON 數(shù)據(jù)進行編解碼。
2.1 dumps
json 模塊的 dumps 方法可以將 Python 對象轉(zhuǎn)為 JSON 格式字符串,以字典格式為例,看個示例:
import json
d = {'id':'001', 'name':'張三', 'age':'20'}
j = json.dumps(d, ensure_ascii=False)
print(j)
執(zhí)行結(jié)果:
{"id": "001", "name": "張三", "age": "20"}
我們發(fā)現(xiàn)上面的輸出結(jié)果并不是格式化的 JSON,dumps 方法還可以對數(shù)據(jù)進行格式化,如下所示:
import json
d = {'id':'001', 'name':'張三', 'age':'20'}
j = json.dumps(d, ensure_ascii=False, sort_keys=True, indent=4, separators=(',', ': '))
print(j)
執(zhí)行結(jié)果:
{
"age": "20",
"id": "001",
"name": "張三"
}
當(dāng)然,除了字典類型外,其他一些 Python 類型也可轉(zhuǎn)成 JSON 格式的字符串,它們之間有對應(yīng)關(guān)系如下所示:
Python JSON
dict object
list, tuple array
str string
iint, float, int 和 float 派生的枚舉 number
True true
False false
None null
再來看一下如何將 JSON 數(shù)據(jù)寫入文件:
import json
d = {'id':'001', 'name':'張三', 'age':'20'}
j = json.dumps(d, ensure_ascii=False, sort_keys=True, indent=4, separators=(',', ': '))
with open('test.json', 'w', encoding='utf-8') as f:
f.write(j)
2.2 dump
json 模塊的 dump 方法可以將 Python 對象序列化為 JSON 格式化流形式的文件類對象。
如果我們需要將數(shù)據(jù)寫到文件里的時候,dump 方法會比 dumps 方法方便一點,看一下示例:
import json
d = {'id':'001', 'name':'張三', 'age':'20'}
with open('test.json', 'w', encoding='utf-8') as f:
json.dump(d, f, indent=4, ensure_ascii=False)
如果我們需要的數(shù)據(jù)格式為 JSON 格式字符串時,比如:將數(shù)據(jù)存入數(shù)據(jù)庫,這時則需要用 dumps 方法。
2.3 loads鄭州人流多少錢 http://mobile.sgyy029.com/
json 模塊的 loads 方法可以將 JSON 格式數(shù)據(jù)轉(zhuǎn)為 Python 對象,看個示例:
import json
j = '{"id":"001", "name":"張三", "age":"20"}'
d = json.loads(j)
print(d)
執(zhí)行結(jié)果:
{'id': '001', 'name': '張三', 'age': '20'}
兩者之間轉(zhuǎn)換的對應(yīng)關(guān)系如下所示:
JSON Python
object dict
array list
string str
number (int) int
number (real) float
true True
false False
null None
我們再來讀取一下之前生成的 test.json 中數(shù)據(jù)并將其轉(zhuǎn)為 Python 對象,如下所示:
import json
with open('test.json', encoding='utf-8') as f:
data = f.read()
print(json.loads(data))
執(zhí)行結(jié)果:
{'id': '001', 'name': '張三', 'age': '20'}
2.4 load
json 模塊的 load 方法將文件類對象轉(zhuǎn)為 Python 對象,看個示例:
import json
with open('test.json', encoding='utf-8') as f:
print(json.load(f))
執(zhí)行結(jié)果:
{'id': '001', 'name': '張三', 'age': '20'}
我們可以看出 load 方法傳的參數(shù)是文件對象,而 loads 方法參數(shù)傳的是字符串。
看完上述內(nèi)容,你們對JSON的使用方法大概了解了嗎?如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
本文標(biāo)題:python中JSON的使用方法
鏈接地址:http://aaarwkj.com/article48/pjsohp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、品牌網(wǎng)站建設(shè)、網(wǎng)站收錄、動態(tài)網(wǎng)站、網(wǎng)站制作、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)