#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:
return ret
return default
#如
dicttest={"result":{"code":"110002","msg":"设备设备序列号或验证码错误"}}
ret=dict_get(dicttest, 'msg', None)
print(ret)
字典的列表
"network": {
"tls": [],
"udp": [
{
"src": "192.168.56.102",
"dst": "114.114.114.114",
"offset": 2372,
"time": 9.506472110748291,
"dport": 53,
"sport": 51394
},
{
"src": "192.168.56.102",
"dst": "114.114.114.114",
"offset": 2611,
"time": 2.232347011566162,
"dport": 53,
"sport": 53604
}]
}
for k,v in mydict.items():
if type(v) is types.ListType:
for val in v:
if type(val) is types.DictType:
for key,value in val.items():
print("%s:%s"%(key,value))
else:
print("%s:%s"%(k,v))