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通过OpenCV的findContours获取轮廓并切割实例
Jan 05 Python
Python单向链表和双向链表原理与用法实例详解
Aug 31 Python
python生成n个元素的全组合方法
Nov 13 Python
Python查找最长不包含重复字符的子字符串算法示例
Feb 13 Python
在python下使用tensorflow判断是否存在文件夹的实例
Jun 10 Python
django foreignkey(外键)的实现
Jul 29 Python
python/Matplotlib绘制复变函数图像教程
Nov 21 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
Python 模拟动态产生字母验证码图片功能
Dec 24 Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
Apr 29 Python
Python中如何添加自定义模块
Jun 09 Python
详解python实现可视化的MD5、sha256哈希加密小工具
Sep 14 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
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
PHP JSON格式数据交互实例代码详解
2011/01/13 PHP
php中用于检测一个地理IP地址是否可用的代码
2012/02/19 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
利用js对象弹出一个层
2008/03/26 Javascript
Javascript拓展String方法小结
2013/07/08 Javascript
jquery中的查找parents与closest方法之间的区别
2013/12/02 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
Clipboard.js 无需Flash的JavaScript复制粘贴库
2015/10/02 Javascript
JavaScript原生xmlHttp与jquery的ajax方法json数据格式实例
2015/12/04 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
js的各种排序算法实现(总结)
2016/07/23 Javascript
slideToggle+slideup实现手机端折叠菜单效果
2017/05/25 Javascript
React应用中使用Bootstrap的方法
2017/08/15 Javascript
详解vue2.0 不同屏幕适配及px与rem转换问题
2018/02/23 Javascript
实例讲解Vue.js中router传参
2018/04/22 Javascript
JS动态插入脚本和插入引用外部链接脚本的方法
2018/05/21 Javascript
详解用JS添加和删除class类名
2019/03/25 Javascript
echarts多条折线图动态分层的实现方法
2019/05/24 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
微信小程序反编译的实现
2020/12/10 Javascript
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
python解决pandas处理缺失值为空字符串的问题
2018/04/08 Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
2019/04/11 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
2019/08/30 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
学点简单的Django之第一个Django程序的实现
2021/02/24 Python
节电标语大全
2014/06/23 职场文书
先进人物事迹材料
2014/12/29 职场文书
2015年超市员工工作总结
2015/05/04 职场文书
预备党员考察意见范文
2015/06/01 职场文书