請(qǐng)教一個(gè)python字符串處理的問(wèn)題?
問(wèn)題描述
本人初學(xué)python,想利用python解決一些工作生活上面的實(shí)際問(wèn)題,這樣能提升更快一些。個(gè)人也不愿意做伸手黨,但遇到一個(gè)問(wèn)題確實(shí)自己無(wú)法解決,特此求助各位高手。比如某程序會(huì)產(chǎn)生這樣的日志{TypeNameA:{JSON格式數(shù)據(jù)}}{TypeNameA:{JSON格式數(shù)據(jù)}}{TypeNameB:{JSON格式數(shù)據(jù)}}{TypeNameC:{JSON格式數(shù)據(jù)}}
怎樣先判斷TypeName,然后再把后面json格式的數(shù)據(jù)取出來(lái),通過(guò)json.loads(xxx)的方式讀取為dict。再讀取其中的數(shù)據(jù)?還有由于不同Type的日志,后面的json格式層級(jí)也不盡相同。如果在這樣多層嵌套的字典中直接取到自己想要的內(nèi)容?比如{'person':{'name':{'firstname':'wang','oldname':'lee'}}}這樣,我想直接獲得firstname對(duì)應(yīng)的內(nèi)容,但是使用dict.get(’xxx’)明顯是不行的,因?yàn)檫@里firstname已經(jīng)不算是key,而且value的內(nèi)容
另外有個(gè)問(wèn)題,dict[’key1’]與dict.get(’key’)這兩種方式,當(dāng)處理大量數(shù)據(jù)的時(shí)候,其速度和性能有沒(méi)有比較大的差異?
問(wèn)題解答
回答1:dic[’person’][’name’][’firstname’]回答2:
firstname就是里面的詞典的key。你就寫這樣吧:
d = {'person':{'name':{'firstname':'wang','oldname':'lee'}}}d[’person’][’name’][’firstname’]回答3:
需要先用json.loads()把json格式轉(zhuǎn)換為字典,然后對(duì)字典’person’[’firstname’]層層提取
相關(guān)文章:
1. 為什么我ping不通我的docker容器呢???2. nignx - docker內(nèi)nginx 80端口被占用3. python3.x - python連oanda的模擬交易api獲取json問(wèn)題第五問(wèn)4. angular.js - angular內(nèi)容過(guò)長(zhǎng)展開(kāi)收起效果5. java - SSH框架中寫分頁(yè)時(shí)service層中不能注入分頁(yè)類6. 關(guān)于docker下的nginx壓力測(cè)試7. docker鏡像push報(bào)錯(cuò)8. javascript - js代碼獲取驗(yàn)證碼倒計(jì)時(shí)問(wèn)題9. dockerfile - [docker build image失敗- npm install]10. html5 - 百度echart官網(wǎng)下載的地圖json數(shù)據(jù)亂碼
