python嵌套字典取值_python嵌套字典比较值与取值的实现示例
python嵌套字典比較值與取值的實(shí)現(xiàn)示例
本文通過(guò)示例給大家介紹了python嵌套字典比較值,取值,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。
示例代碼
#取值import types
allGuests = {'Alice': {'apples': 5, 'pretzels': {'12':{'beijing':456}}},
'Bob': {'ham sandwiches': 3, 'apple': 2},
'Carol': {'cups': 3, 'apple pies': 1}}
def dictget(dict1,obj,default=None):
for k,v in dict1.items():
if k == obj:
print(v)
else:
if type(v) is dict:
re=dictget(v,obj)
if re is not default:
print(re)
dictget(allGuests,'beijing')
結(jié)果:
比較大小
defbijiaodict(dict1,dict2):
fork,vindict1.items():
fork2,v2indict2.items():
ifk==k2andv==v2:
print('dict1=dict2')
else:
print('dict1!=dict2')
dict1={'2':'6'}
dict2={2:{1:{1:8}}}
bijiaodict(dict1,dict2)
結(jié)果:
python字典嵌套字典的情況下獲取某個(gè)key的value
正好最近在用python寫(xiě)接口的測(cè)試程序,期間用到解析字典獲取某個(gè)key的value,由于多個(gè)接口返回的字典格式不是固定的并存在多層嵌套的情況。在字典的方法中也沒(méi)有找到可直接達(dá)到目的的方法,于是自己寫(xiě)了個(gè)程序。分享給大家:
#coding: utf-8
import types
#獲取字典中的objkey對(duì)應(yīng)的值,適用于字典嵌套
#dict:字典
#objkey:目標(biāo)key
#default:找不到時(shí)返回的默認(rèn)值
def dict_get(dict, objkey, default):
tmp = dict
for k,v in tmp.items():
if k == objkey:
return v
else:
if type(v) is types.DictType:
ret = dict_get(v, objkey, default)
if ret is not default:
return ret
return default
#如
dicttest={"result":{"code":"110002","msg":"設(shè)備設(shè)備序列號(hào)或驗(yàn)證碼錯(cuò)誤"}}
ret=dict_get(dicttest, 'msg', None)
print(ret)
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值
完 謝謝觀看
總結(jié)
以上是生活随笔為你收集整理的python嵌套字典取值_python嵌套字典比较值与取值的实现示例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 男人无精症怎么办
- 下一篇: 去日本留学大概需要多少费用?