python字典嵌套字典的情况下找到某个key的value详解


Posted in Python onJuly 10, 2019

最近在用python写接口的测试程序,期间用到解析字典获取某个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:
          return ret
  return default

#如
dicttest={"result":{"code":"110002","msg":"设备设备序列号或验证码错误"}}
ret=dict_get(dicttest, 'msg', None)
print(ret)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python pass 语句使用示例
Mar 11 Python
python 转换 Javascript %u 字符串为python unicode的代码
Sep 06 Python
Python增量循环删除MySQL表数据的方法
Sep 23 Python
python django 增删改查操作 数据库Mysql
Jul 27 Python
Python调用C语言的方法【基于ctypes模块】
Jan 22 Python
对Python中type打开文件的方式介绍
Apr 28 Python
python实现求两个字符串的最长公共子串方法
Jul 20 Python
在交互式环境中执行Python程序过程详解
Jul 12 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
Jan 10 Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 Python
将python字符串转化成长表达式的函数eval实例
May 11 Python
Python定时任务APScheduler安装及使用解析
Aug 07 Python
如何安装并使用conda指令管理python环境
Jul 10 #Python
python变量的存储原理详解
Jul 10 #Python
python中 * 的用法详解
Jul 10 #Python
通过python实现随机交换礼物程序详解
Jul 10 #Python
Python实现简单的列表冒泡排序和反转列表操作示例
Jul 10 #Python
Python获取好友地区分布及好友性别分布情况代码详解
Jul 10 #Python
Python中的类与类型示例详解
Jul 10 #Python
You might like
十天学会php之第四天
2006/10/09 PHP
用文本文件实现的动态实时发布新闻的程序
2006/10/09 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
2014/06/12 PHP
CI框架中zip类应用示例
2014/06/17 PHP
thinkPHP中多维数组的遍历方法
2016/01/09 PHP
PHP最常用的正则表达式
2017/02/13 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
优秀js开源框架-jQuery使用手册(1)
2007/03/10 Javascript
最短的IE判断代码
2011/03/13 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
2014/05/27 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
javascript中eval和with用法实例总结
2015/11/30 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
DOM事件探秘篇
2017/02/15 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
jquery插件开发之选项卡制作详解
2017/08/30 jQuery
vue 自定义全局方法,在组件里面的使用介绍
2018/02/28 Javascript
vue2.0 循环遍历加载不同图片的方法
2018/03/06 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
使用p5.js临摹动态图形
2019/10/23 Javascript
Python中文分词工具之结巴分词用法实例总结【经典案例】
2017/04/15 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
Python实现Excel自动分组合并单元格
2021/02/22 Python
西班牙国家航空官方网站:Iberia
2017/11/16 全球购物
美国花园雕像和家居装饰网上商店:Design Toscano
2019/03/09 全球购物
财务会计专业求职信范文
2013/12/31 职场文书
医学专业大学生求职信
2014/07/12 职场文书
2015年公路养护工作总结
2015/05/13 职场文书
辞职信怎么写?
2019/05/21 职场文书