前言
本文通過示例給大家介紹了python嵌套字典比較值,取值,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。
示例代碼
#取值import typesallGuests = {'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')結果:


比較大小
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)結果:

python字典嵌套字典的情況下獲取某個key的value
正好最近在用python寫接口的測試程序,期間用到解析字典獲取某個key的value,由于多個接口返回的字典格式不是固定的并存在多層嵌套的情況。在字典的方法中也沒有找到可直接達到目的的方法,于是自己寫了個程序。分享給大家:
#coding: utf-8import types#獲取字典中的objkey對應的值,適用于字典嵌套#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":"設備設備序列號或驗證碼錯誤"}}ret=dict_get(dicttest, 'msg', None)print(ret)總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林站長站的支持。 
新聞熱點
疑難解答