成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Python?json模塊常用的方法有哪些

這篇文章主要講解了“Python json模塊常用的方法有哪些”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Python json模塊常用的方法有哪些”吧!

廣東網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)公司從2013年開(kāi)始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司

JSON(JavaScript Object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,遵循歐洲計(jì)算機(jī)協(xié)會(huì)制定的 JavaScript 規(guī)范(簡(jiǎn)稱 ECMAScript)。

JSON 易于人閱讀和編寫(xiě),同時(shí)也易于機(jī)器解析和生成,能夠有效的提升網(wǎng)信息的傳輸效率,因此它常被作為網(wǎng)絡(luò)、程序之間傳遞信息的標(biāo)準(zhǔn)語(yǔ)言,比如客戶端與服務(wù)器之間信息交互就是以 JSON 格式傳遞的。

簡(jiǎn)單地說(shuō),JSON 可以將 JavaScript 對(duì)象表示的一組數(shù)據(jù)轉(zhuǎn)換為字符串格式,以便于在網(wǎng)絡(luò)、程序間傳輸這個(gè)字符串。并且在需要的時(shí)候,還可以將它轉(zhuǎn)換為編程語(yǔ)言所支持的數(shù)據(jù)格式。本節(jié)主要介紹如何實(shí)現(xiàn) JSON 數(shù)據(jù)與 Python 數(shù)據(jù)類型間的相互轉(zhuǎn)換。

Python 語(yǔ)言內(nèi)置了專門處理 JOSN 數(shù)據(jù)的模塊 —— jons 模塊,通過(guò)該模塊就可以完成 JSON 與 Python 兩種數(shù)據(jù)格式的相互轉(zhuǎn)換。

jons.loads()

該方法可以將 json 格式的字符串轉(zhuǎn)換成 Python 對(duì)象(比如列表、字典、元組、整型以及浮點(diǎn)型),其中最常用的是轉(zhuǎn)換為字典類型。示例如下:

# coding:utf8
import json
#JOSN字符串
website_info='{"name" : "CSDN","PV" : "2000萬(wàn)","UV" : "800萬(wàn)","create_time" : "1999年"}'
py_dict=json.loads(website_info)
print("python字典數(shù)據(jù)格式:%s;數(shù)據(jù)類型:%s"% (py_dict,type(py_dict)))

輸出結(jié)果:

python字典數(shù)據(jù)格式:{'name': 'CSDN', 'PV': '2000萬(wàn)', 'UV': '800萬(wàn)', 'create_time': '1999年'};數(shù)據(jù)類型:<class 'dict'>

注意:上述示例中 JSON 字符串看上去和 Python 字典非常相似,但是其本質(zhì)不同,JOSN 是字符串類型,而 Python 字典是 dict 類型。

json.dump()

它可以將 Python 對(duì)象(字典、列表等)轉(zhuǎn)換為 json 字符串,并將轉(zhuǎn)換后的數(shù)據(jù)寫(xiě)入到 json 格式的文件中 ,因此該方法必須操作文件流對(duì)象。比如當(dāng)使用爬蟲(chóng)程序完成數(shù)據(jù)抓取后,有時(shí)需要將數(shù)據(jù)保存為 json 格式,此時(shí)就用到了 json.dump() 方法,語(yǔ)法格式如下:

json.dump(object,f,inden=0,ensure_ascii=False)

參數(shù)說(shuō)明如下:

  • object:Python 數(shù)據(jù)對(duì)象,比如字典,列表等

  • f:文件流對(duì)象,即文件句柄。

  • indent:格式化存儲(chǔ)數(shù)據(jù),使 JSON 字符串更易閱讀。

  • ensure_ascii:是否使用 ascii 編碼,當(dāng)數(shù)據(jù)中出現(xiàn)中文的時(shí)候,需要將其設(shè)置為 False。

示例示例如下:

import json
ditc_info={"name" : "CSDN","PV" : "2000萬(wàn)","UV" : "800萬(wàn)","create_time" : "1999年"}
with open("web.josn","a") as f:
    json.dump(ditc_info,f,ensure_ascii=False)

打開(kāi) web.json 文件,其內(nèi)容如下所示:

{
"name": "CSDN",
"PV": "2000萬(wàn)",
"UV": "800萬(wàn)",
"create_time": "1999年"
}

您也可以將 Python 列表轉(zhuǎn)換成 JSON 字符串,并保存至 json 文件中,如下所示:

import json
item_list = []
item = {'website': 'CSDN', 'url': "www.CSDN.net"}
for k,v in item.items():
    item_list.append(v)
with open('info_web.json', 'a') as f:
    json.dump(item_list, f, ensure_ascii=False)

打開(kāi) info_web.json 文件,其內(nèi)容如下:

["CSDN", "www.CSDN.net"]

json.load()

該方法用于操作文件流對(duì)象,不過(guò)它與 dump() 恰好相反,它表示從  json 文件中讀取 JSON 字符串,并將讀取內(nèi)容轉(zhuǎn)換為 Python 對(duì)象。使用示例如下:

import json
site = {'name':'CSDN',"url":"www.CSDN.net"}
filename = 'website.json'
with open (filename,'w') as f:
    json.dump(site,f,ensure_ascii=False)
with open (filename,'r') as f:
    print(json.load(f))

輸出結(jié)果如下:

{'name': 'CSDN', 'url': 'www.CSDN.net'}

json.dumps()

該方法可以將 Python 對(duì)象轉(zhuǎn)換成 JSON 字符串。示例如下:

import json
#python字典
item = {'website': 'CSDN', 'rank': 1}
# json.dumps之后
item = json.dumps(item,ensure_ascii=False)
print('轉(zhuǎn)換之后的數(shù)據(jù)類型為:',type(item))
print(item)

輸出結(jié)果如下:

轉(zhuǎn)換之后的數(shù)據(jù)類型為: <class 'str'>
{"website": "CSDN", "url": "www.CSDN.net"}

最后對(duì)上述方法做簡(jiǎn)單地總結(jié),如下表所示:

JSON方法總結(jié)

方法作用
json.dumps()將 Python 對(duì)象轉(zhuǎn)換成 JSON 字符串。
json.loads()將 JSON 字符串轉(zhuǎn)換成 Python 對(duì)象。
json.dump()將 Python 中的對(duì)象轉(zhuǎn)化成 JSON 字符串儲(chǔ)存到文件中。
json.load()將文件中的 JSON 字符串轉(zhuǎn)化成 Python 對(duì)象提取出來(lái)。

綜上所述 json.load() 與 json.dump() 操作的是文件流對(duì)象,實(shí)現(xiàn)了 json 文件的讀寫(xiě)操作,而 json.loads() 與 json.dumps() 操作的是 Python 對(duì)象或者 JOSN 字符串。

感謝各位的閱讀,以上就是“Python json模塊常用的方法有哪些”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Python json模塊常用的方法有哪些這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

網(wǎng)站題目:Python?json模塊常用的方法有哪些
網(wǎng)頁(yè)路徑:http://jinyejixie.com/article38/gciosp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、做網(wǎng)站、全網(wǎng)營(yíng)銷推廣、域名注冊(cè)、ChatGPT微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
喀什市| 沈阳市| 庄浪县| 屏东市| 梅州市| 加查县| 拜泉县| 孝昌县| 荣昌县| 新田县| 麻江县| 防城港市| 桃园市| 贵南县| 山西省| 盖州市| 定兴县| 灵石县| 桃园市| 筠连县| 临桂县| 龙海市| 额济纳旗| 宣化县| 孟州市| 临猗县| 全南县| 湟源县| 满洲里市| 错那县| 丹阳市| 蓬安县| 侯马市| 亳州市| 许昌县| 九江县| 新余市| 海林市| 德安县| 大田县| 平山县|