Python实现的字典值比较功能示例


Posted in Python onJanuary 08, 2018

本文实例讲述了Python实现的字典值比较功能。分享给大家供大家参考,具体如下:

#coding=utf8
import logging
import os
from Lib.DealCsv import ExceptPropertyDic
from wxPython._wx import false
'''''
用于json数据的比较,包含属性、属性值的比较。
'''
#用于比较字符串、列表
PATH=lambda p:os.path.abspath(os.path.join(
  os.path.dirname(__file__), p))
logging.basicConfig(level=logging.DEBUG,
        format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
        datefmt='%a, %d %b %Y %H:%M:%S',
        filename=PATH('../Log/judgeProps.log'),
        filemode='w')
def CmpObj( reaResultl,exceptResult):
  try:
    if len(reaResultl)==len(exceptResult):
      if cmp(reaResultl,exceptResult)==0:
        return True
      else:
        return False
    else:
      return False
  except Exception,e:
    print e
#参数包含两个:
#containVar:查找包含的字符
#stringVar:所要查找的字符串
def containVarInString(containVar,stringVar):
  try:
    if isinstance(stringVar, str):
      if containVar in stringVar:
        return True
      else:
        return False
    else:
      return False
  except Exception,e:
    print e
def CmpValue(propsDic,exceptDic):
  try:
    containSeparatorList=[val for var in exceptDic.values() if containVarInString("|",var) for val in var.split("|")]
    notContainSeparatorList=[var for var in exceptDic.values() if not containVarInString("|",var)]
    exceptValueList=notContainSeparatorList+containSeparatorList
    FalseBool=list(set([False for var in propsDic.values() if var not in exceptValueList ]))
    if len(FalseBool):
      return False
    else:
      return True
  except Exception,e:
    print e
propsDic={
  'itemId ': 'XX',
  'item' : 'track' ,
  'serviceId' : 'pageview' ,
  'srcSubModule' : '声音条' ,
  'srcPosition' : 'XX',
  'srcPage' : '发现_推荐' ,
  'srcPageId' : 'XX' ,
  'srcModule' : '焦点图' ,
  'srcTitle' : '焦点图标题' ,
  'focusId' : '焦点图ID'
  }
ExpecDic={
  'itemId ': 'XX',
  'item' : 'track' ,
  'serviceId' : 'pageview' ,
  'srcSubModule' : '声音条' ,
  'srcPosition' : 'XX',
  'srcPage' : '发现_推荐|猜你喜欢|订阅' ,
  'srcPageId' : 'XX' ,
  'srcModule' : '焦点图' ,
  'srcTitle' : '焦点图标题' ,
  'focusId' : '焦点图ID'
  }
if __name__=="__main__":
  print "三水点靠木测试结果:"
  if CmpValue(propsDic, ExpecDic):
    print "Equel"
  else:
    print "not equel"

运行结果:

Python实现的字典值比较功能示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python实现对excel文件列表值进行统计的方法
Jul 25 Python
python文件与目录操作实例详解
Feb 22 Python
python实现稀疏矩阵示例代码
Jun 09 Python
Python中字典和集合学习小结
Jul 07 Python
python 递归深度优先搜索与广度优先搜索算法模拟实现
Oct 22 Python
Python中关于浮点数的冷知识
Sep 22 Python
python路径的写法及目录的获取方式
Dec 26 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
Feb 17 Python
python实现门限回归方式
Feb 29 Python
django 数据库返回queryset实现封装为字典
May 19 Python
新手必备Python开发环境搭建教程
May 28 Python
7个关于Python的经典基础案例
Nov 07 Python
python基础之包的导入和__init__.py的介绍
Jan 08 #Python
Python使用matplotlib的pie函数绘制饼状图功能示例
Jan 08 #Python
微信跳一跳自动运行python脚本
Jan 08 #Python
python3实现跳一跳点击跳跃
Jan 08 #Python
分数霸榜! python助你微信跳一跳拿高分
Jan 08 #Python
Python爬虫通过替换http request header来欺骗浏览器实现登录功能
Jan 07 #Python
ubuntu环境下python虚拟环境的安装过程
Jan 07 #Python
You might like
PHP的几个常用数字判断函数代码
2012/04/24 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
iis6+javascript Add an Extension File
2007/06/13 Javascript
Javascript 日期处理之时区问题
2009/10/08 Javascript
jQuery 表格插件整理
2010/04/27 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
2017/09/28 Javascript
微信小程序中进行地图导航功能的实现方法
2018/06/29 Javascript
Angular使用Restful的增删改
2018/12/28 Javascript
Vue中的transition封装组件的实现方法
2019/08/13 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
2020/07/24 Javascript
Vue props中Object和Array设置默认值操作
2020/07/30 Javascript
[04:42]2015国际邀请赛CDEC战队晋级之路
2015/08/13 DOTA
[35:39]完美世界DOTA2联赛PWL S2 FTD.C vs Rebirth 第二场 11.22
2020/11/24 DOTA
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
Python实现模拟分割大文件及多线程处理的方法
2017/10/10 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
Python自定义线程类简单示例
2018/03/23 Python
Python简单获取二维数组行列数的方法示例
2018/12/21 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
python模块如何查看
2020/06/16 Python
python中plt.imshow与cv2.imshow显示颜色问题
2020/07/16 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
Myprotein中国网站:欧洲畅销运动营养品牌
2021/02/11 全球购物
描述RIP和OSPF区别以及特点
2015/01/17 面试题
教师评优的个人自我评价分享
2013/09/19 职场文书
求职简历自我评价2015
2015/03/10 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
2015年幼师个人工作总结
2015/10/15 职场文书
如何才能写好调研报告?
2019/07/03 职场文书