Python開發(fā)中字典和json的區(qū)別是什么-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)Python開發(fā)中字典和 json的區(qū)別是什么,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

目前創(chuàng)新互聯(lián)公司已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、介休網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

  Python開發(fā)中字典和 json的區(qū)別?字典是一種數(shù)據(jù)結(jié)構(gòu),json 是一種數(shù)據(jù)的表現(xiàn)形式,字典的 key 值只 要是能 hash 的就行,json 的必須是字符串。

    Python開發(fā)中字典和 json的概念區(qū)別:


  一、字典


  字典是一種數(shù)據(jù)結(jié)構(gòu),而json是一種數(shù)據(jù)格式,格式就會(huì)有一些形式上的限制,比如json的格式要求必須且只能使用雙引號(hào)作為key或者值的邊界符號(hào)(值如果是數(shù)字可以不用加雙引號(hào)),不能使用單引號(hào),用單引號(hào)或者不用引號(hào)會(huì)導(dǎo)致讀取數(shù)據(jù)錯(cuò)誤,而且“key”必須使用邊界符(雙引號(hào)),但字典就無(wú)所謂了,可以使用單引號(hào),也可以使用雙引號(hào)。


  dict是一個(gè)完整的數(shù)據(jù)結(jié)構(gòu),是對(duì)Hash Table這一數(shù)據(jù)結(jié)構(gòu)的一種實(shí)現(xiàn),是一套從存儲(chǔ)到提取都封裝好了的方案。它使用內(nèi)置的哈希函數(shù)來(lái)規(guī)劃key對(duì)應(yīng)value的存儲(chǔ)位置,從而獲得O(1)的數(shù)據(jù)讀取速度。


  二、json


  json是JavaScript Object Notation的首字母縮寫,字面的意思是javascript對(duì)象表示法,這里說(shuō)的json指的是類似于javascript對(duì)象的一種數(shù)據(jù)格式對(duì)象,目前這種數(shù)據(jù)格式比較流行,逐漸替換掉了傳統(tǒng)的xml數(shù)據(jù)格式, 前端使用ajax的時(shí)候后臺(tái)返回該前端的數(shù)據(jù)格式就是json格式的。


  json是一種數(shù)據(jù)格式,是純字符串。可以被解析成Python的dict或者其他形式。


  三、json和dict區(qū)別對(duì)比


  json的key只能是字符串,python的dict可以是任何可hash對(duì)象(hashtable type);


  json的key可以是有序、重復(fù)的;dict的key不可以重復(fù)。


  json的value只能是字符串、浮點(diǎn)數(shù)、布爾值或者null,或者它們構(gòu)成的數(shù)組或者對(duì)象。


  json任意key存在默認(rèn)值undefined,dict默認(rèn)沒(méi)有默認(rèn)值;


  json訪問(wèn)方式可以是[],也可以是.,遍歷方式分in、of;dict的value僅可以下標(biāo)訪問(wèn)。


  json的字符串強(qiáng)制雙引號(hào),dict字符串可以單引號(hào)、雙引號(hào);


  dict可以嵌套tuple,json里只有數(shù)組。


  json:true、false、null


  python:True、False、None


  json中文必須是unicode編碼,如"\u6211".


  json的類型是字符串,字典的類型是字典。


  四、hashtable


  一個(gè)對(duì)象當(dāng)其聲明周期內(nèi)的hash值不發(fā)生改變,而且可以跟其他對(duì)象進(jìn)行比較時(shí),這個(gè)對(duì)象就是hashtable的。


  1、python中的基本類型都是Hashtable,如str、bytes、數(shù)字類型、tuple等;


  2、用戶自定義的類型默認(rèn)都是hashtable,因?yàn)樗鼈兊膆ash值就是id()值;


  3、frozenset始終都是hashtable的,因?yàn)樗鼈兯械捻?xiàng)目都是被定義成hashtable的;


  4、只有當(dāng)tuple內(nèi)的所有項(xiàng)都是hashtable的時(shí)候,tuple才是hashtable;

以上就是Python開發(fā)中字典和 json的區(qū)別是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

名稱欄目:Python開發(fā)中字典和json的區(qū)別是什么-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://muchs.cn/article38/ddchsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、全網(wǎng)營(yíng)銷推廣企業(yè)建站、網(wǎng)站排名、App開發(fā)、外貿(mào)建站

廣告

聲明:本網(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)

成都app開發(fā)公司