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 2.7.x 和 3.x 版本的重要区别小结
Nov 28 Python
简介Python中用于处理字符串的center()方法
May 18 Python
详解Python之数据序列化(json、pickle、shelve)
Mar 30 Python
Python按钮的响应事件详解
Mar 04 Python
不到20行代码用Python做一个智能聊天机器人
Apr 19 Python
PyQt 实现使窗口中的元素跟随窗口大小的变化而变化
Jun 18 Python
python将三维数组展开成二维数组的实现
Nov 30 Python
Python使用pyyaml模块处理yaml数据
Apr 14 Python
django的autoreload机制实现
Jun 03 Python
在python下实现word2vec词向量训练与加载实例
Jun 09 Python
浅谈Python 钉钉报警必备知识系统讲解
Aug 17 Python
Python实现将多张图片合成MP4视频并加入背景音乐
Apr 28 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
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
使用CodeIgniter的类库做图片上传
2014/06/12 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
PHP内置函数生成随机数实例
2019/01/18 PHP
javascript开发技术大全-第3章 js数据类型
2011/07/03 Javascript
JS截取字符串常用方法详细整理
2013/10/28 Javascript
JS获取单击按钮单元格所在行的信息
2014/06/17 Javascript
js限制文本框只能输入中文的方法
2015/08/11 Javascript
jQuery实现带延迟效果的滑动菜单代码
2015/09/02 Javascript
javascript数组克隆简单实现方法
2015/12/16 Javascript
详解JavaScript时间格式化
2015/12/23 Javascript
使用堆实现Top K算法(JS实现)
2015/12/25 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
详解微信小程序Page中data数据操作和函数调用
2017/09/27 Javascript
基于vue.js的分页插件详解
2017/11/27 Javascript
解决vue中对象属性改变视图不更新的问题
2018/02/23 Javascript
electron实现qq快捷登录的方法示例
2018/10/22 Javascript
Vue.js上传图片到阿里云OSS存储的方法示例
2018/12/13 Javascript
详解vue组件中使用路由方法
2019/02/12 Javascript
vue中keep-alive组件的入门使用教程
2019/06/06 Javascript
webpack DllPlugin xxx is not defined解决办法
2019/12/13 Javascript
[00:37]DOTA2上海特级锦标赛 OG战队宣传片
2016/03/03 DOTA
python爬虫入门教程之糗百图片爬虫代码分享
2014/09/02 Python
Python中规范定义命名空间的一些建议
2016/06/04 Python
python 读写文件,按行修改文件的方法
2018/07/12 Python
pytorch自定义初始化权重的方法
2019/08/17 Python
Python中如何引入第三方模块
2020/05/27 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
客服专员岗位职责范本
2015/04/07 职场文书
毕业论文答辩演讲稿
2015/06/23 职场文书
催款函怎么写
2015/06/24 职场文书
结婚十年感言
2015/07/31 职场文书
大学生社会服务心得体会
2016/01/22 职场文书
Go语言并发编程 sync.Once
2021/10/16 Golang
Golang并发工具Singleflight
2022/05/06 Golang