python巢狀字典比較值與取值的實現示例

2022-10-04 20:45:41 字數 1402 閱讀 9831

前言

示例**

#取值import types

allguests = }},

'bob': ,

'carol': }

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=

dict2=}}

bijiaodicwww.cppcns.comt(dict1,dict2)

結果:python字典巢狀字典的情況下獲取某個key的value

正好最近在用python寫介面的測試程式,期間用到解析字典www.cppcns.com獲取某個key的value,由於多個介面返回的字典格式不是固定的並存在多層巢狀的情況。在字典的方法中也沒有找到可直接達到目的的方法,於是自己寫了個程式。分享給大家:

#coding: utf-8

import 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:

kwvyrgjca return ret

return default

#如dicttest=}

ret=dict_get(dicttest, 'msg', none)

print(ret)

總結本文標題: python巢狀字典比較值與取值的實現示例

本文位址:

python 有序字典與巢狀字典

1.ordereddict 有序字典 ordereddict是dict的子類,它記住了內容新增的順序。而普通字典是無序的。普通字典 import collections d dict d a a d b b d c c for k,v in d.items print k,v a ac c b b有...

巢狀字典按字典值排序

這裡有一組關於各省各市上市公司數量的巢狀字典資料,我想實現按各省上市公司數量排序?資料如下 lsd 甘肅 吉林 江蘇 北京 山西 湖北 河南 貴州 四川 重慶 內蒙古 浙江 福建 廣西 上海 河北 廣東 天津 湖南 遼寧 江西 陝西 黑龍江 雲南 海南 安徽 寧夏 新疆 青海 如下 匿名函式中,按照...

Python修改巢狀字典的key值

最近在搞介面測試的時候發現了乙個比較有趣的json入引數,結構如下 json gg 33 觀察該json資料,我們發現有大量的相同的key gg 並且這些key的value值都是一樣的,那麼我們需要修改所有key gg 的值,應該怎麼做呢?提問 為什麼會有這麼有趣的入引數據?我也不知道,因為公司的出...