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类的多重继承问题深入分析
Nov 09 Python
浅要分析Python程序与C程序的结合使用
Apr 07 Python
python中pass语句用法实例分析
Apr 30 Python
Python编程实现生成特定范围内不重复多个随机数的2种方法
Apr 14 Python
MAC中PyCharm设置python3解释器
Dec 15 Python
Python画柱状统计图操作示例【基于matplotlib库】
Jul 04 Python
python批量下载抖音视频
Jun 17 Python
Django 全局的static和templates的使用详解
Jul 19 Python
对python while循环和双重循环的实例详解
Aug 23 Python
深入了解Python 变量作用域
Jul 24 Python
记一次Django响应超慢的解决过程
Sep 17 Python
利用python制作拼图小游戏的全过程
Dec 04 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取进制余数函数代码
2012/01/19 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
2013/09/30 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
2014/08/23 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
常见PHP数据库解决方案分析介绍
2015/09/24 PHP
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
jQuery-Easyui 1.2 实现多层菜单效果的代码
2012/01/13 Javascript
select标签模拟/美化方法采用JS外挂式插件
2013/04/01 Javascript
setTimeout()递归调用不加引号出错的解决方法
2014/09/05 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
JavaScript生成图形验证码
2020/08/24 Javascript
JavaScript 通过Ajax 动态加载CheckBox复选框
2017/08/31 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
解决vue router组件状态刷新消失的问题
2018/08/01 Javascript
使用webpack搭建vue项目及注意事项
2019/06/10 Javascript
JavaScript实现轮播图效果代码实例
2019/09/28 Javascript
javascript实现画板功能
2020/04/12 Javascript
在Django同1个页面中的多表单处理详解
2017/01/25 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
2017/10/25 Python
python 字典中文key处理,读取,比较方法
2018/07/06 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
keras训练曲线,混淆矩阵,CNN层输出可视化实例
2020/06/15 Python
CSS3只让背景图片旋转180度的实现示例
2021/03/09 HTML / CSS
英国花园家具中心:Garden Furniture Centre
2017/08/24 全球购物
德国二手设计师时装和复古时装跳蚤市场:Mädchenflohmarkt
2020/11/09 全球购物
初中生自我评价
2014/02/01 职场文书
新闻编辑自荐书范文
2014/02/12 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
企业员工辞职信范文
2015/05/12 职场文书
世界名著读书笔记
2015/06/25 职场文书
演讲稿:态度决定一切
2019/04/02 职场文书
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python
Mysql将字符串按照指定字符分割的正确方法
2022/05/30 MySQL