python嵌套字典比較值與取值的實現(xiàn)示例
前言
本文通過示例給大家介紹了python嵌套字典比較值,取值,分享出來供大家參考學(xué)習(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é)果:


比較大小
def bijiaodict(dict1,dict2):
for k,v in dict1.items():
for k2,v2 in dict2.items():
if k==k2 and v==v2:
print('dict1=dict2')
else:
print('dict1!=dict2')
dict1={'2':'6'}
dict2={2:{1:{1:8}}}
bijiaodict(dict1,dict2)
結(jié)果:

python字典嵌套字典的情況下獲取某個key的value
正好最近在用python寫接口的測試程序,期間用到解析字典獲取某個key的value,由于多個接口返回的字典格式不是固定的并存在多層嵌套的情況。在字典的方法中也沒有找到可直接達到目的的方法,于是自己寫了個程序。分享給大家:
#coding: utf-8
import types
#獲取字典中的objkey對應(yīng)的值,適用于字典嵌套
#dict:字典
#objkey:目標key
#default:找不到時返回的默認值
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è)備序列號或驗證碼錯誤"}}
ret=dict_get(dicttest, 'msg', None)
print(ret)
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
Python實現(xiàn)從Markdown到PDF的轉(zhuǎn)換的方法
Markdown,以其簡潔的語法和易于閱讀的特性,成為了許多作家、開發(fā)者和學(xué)生記錄思想、編寫教程或撰寫報告的首選格式,然而,在分享或打印這些文檔時,Markdown的純文本形式可能無法滿足對版式和布局的專業(yè)需求,本文將介紹如何用Python代碼輕松實現(xiàn)從Markdown到PDF的轉(zhuǎn)換2024-07-07
python人工智能tensorflow函數(shù)tf.layers.dense使用方法
這篇文章主要介紹了python人工智能tensorflow函數(shù)tf.layers.dense的使用方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05

