python嵌套字典比较值与取值的实现示例


Posted in Python onNovember 03, 2017

前言

本文通过示例给大家介绍了python嵌套字典比较值,取值,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

示例代码

#取值import types
allGuests = {'Alice': {'apples': 5, 'pretzels': {'12':{'beijing':456}}},
  'Bob': {'ham sandwiches': 3, 'apple': 2},
  'Carol': {'cups': 3, 'apple pies': 1}}
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')

结果:

python嵌套字典比较值与取值的实现示例

python嵌套字典比较值与取值的实现示例

比较大小 

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={'2':'6'}
dict2={2:{1:{1:8}}}
bijiaodict(dict1,dict2)

结果:

python嵌套字典比较值与取值的实现示例

python字典嵌套字典的情况下获取某个key的value

正好最近在用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使用cPickle模块序列化实例
Sep 25 Python
Python中encode()方法的使用简介
May 18 Python
python实现自动登录人人网并采集信息的方法
Jun 28 Python
python正则表达式面试题解答
Apr 28 Python
python通过tcp发送xml报文的方法
Dec 28 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
Jan 08 Python
Python获取Redis所有Key以及内容的方法
Feb 19 Python
Python使用paramiko操作linux的方法讲解
Feb 25 Python
TensorBoard 计算图的查看方式
Feb 15 Python
如何使用python传入不确定个数参数
Feb 18 Python
基于matplotlib xticks用法详解
Apr 16 Python
Python如何避免文件同名产生覆盖
Jun 09 Python
基于Python os模块常用命令介绍
Nov 03 #Python
django实现同一个ip十分钟内只能注册一次的实例
Nov 03 #Python
Python实现1-9数组形成的结果为100的所有运算式的示例
Nov 03 #Python
python使用PyCharm进行远程开发和调试
Nov 02 #Python
python中文分词教程之前向最大正向匹配算法详解
Nov 02 #Python
详解Python里使用正则表达式的ASCII模式
Nov 02 #Python
python安装numpy&安装matplotlib& scipy的教程
Nov 02 #Python
You might like
增加反向链接的101个方法 站长推荐
2007/01/31 PHP
PHP学习笔记之一
2011/01/17 PHP
PHP单例模式是什么 php实现单例模式的方法
2016/05/14 PHP
postman的安装与使用方法(模拟Get和Post请求)
2018/08/06 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
PHP实现递归的三种方法
2020/07/04 PHP
判断JavaScript对象是否可用的最正确方法分析
2008/10/03 Javascript
javascript客户端解决方案 缓存提供程序
2010/07/14 Javascript
node.js学习总结之调式代码的方法
2014/06/25 Javascript
jQuery中eq()方法用法实例
2015/01/05 Javascript
JavaScript学习笔记之Function对象
2015/01/22 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
Node.js实现Excel转JSON
2015/04/24 Javascript
有关json_decode乱码及NULL的问题
2015/10/13 Javascript
jQuery继承extend用法详解
2016/10/10 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
2016/12/01 Javascript
深入理解Angular中的依赖注入
2017/06/26 Javascript
iphone刘海屏页面适配方法
2019/05/07 Javascript
Vue中axios的封装(报错、鉴权、跳转、拦截、提示)
2019/08/20 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
node.js使用mongoose操作数据库实现购物车的增、删、改、查功能示例
2019/12/23 Javascript
基于Python的接口测试框架实例
2016/11/04 Python
Python学生信息管理系统修改版
2018/03/13 Python
Python单元测试unittest的具体使用示例
2018/12/17 Python
python 通过麦克风录音 生成wav文件的方法
2019/01/09 Python
python生成器推导式用法简单示例
2019/10/08 Python
python实现梯度下降和逻辑回归
2020/03/24 Python
python 如何调用远程接口
2020/09/11 Python
Django自带用户认证系统使用方法解析
2020/11/12 Python
HTML5 新旧语法标记对我们有什么好处
2012/12/13 HTML / CSS
护理专业毕业生自荐信
2014/06/15 职场文书
三八妇女节寄语
2015/02/27 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
2016计划生育先进个人事迹材料
2016/02/29 职场文书
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题
vue打包时去掉所有的console.log
2022/04/10 Vue.js