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通过pil模块将raw图片转换成png图片的方法
Mar 16 Python
Python json模块使用实例
Apr 11 Python
Python基础入门之seed()方法的使用
May 15 Python
你所不知道的Python奇技淫巧13招【实用】
Dec 14 Python
python抓取网页中链接的静态图片
Jan 29 Python
教你用一行Python代码实现并行任务(附代码)
Feb 02 Python
Python3 实现随机生成一组不重复数并按行写入文件
Apr 09 Python
Python常见排序操作示例【字典、列表、指定元素等】
Aug 15 Python
Python关于excel和shp的使用在matplotlib
Jan 03 Python
对python dataframe逻辑取值的方法详解
Jan 30 Python
python实现PCA降维的示例详解
Feb 24 Python
python 三种方法实现对Excel表格的读写
Nov 19 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 将bmp图片转为jpg等其他任意格式的图片
2009/06/21 PHP
基于OpenCV的PHP图像人脸识别技术
2009/10/11 PHP
php+iframe实现隐藏无刷新上传文件
2012/02/10 PHP
浅析PHP原理之变量(Variables inside PHP)
2013/08/09 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
php实现的数组转xml案例分析
2019/09/28 PHP
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
File, FileReader 和 Ajax 文件上传实例分析(php)
2011/04/27 Javascript
JavaScript包装对象使用介绍
2013/08/29 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
Js与Jq 获取页面元素值的方法和差异对比
2015/04/30 Javascript
JavaScript实现音乐自动切换和轮播
2017/11/05 Javascript
深入理解Vue nextTick 机制
2018/04/28 Javascript
Vue.js添加组件操作示例
2018/06/13 Javascript
jQuery实现炫丽的3d旋转星空效果
2018/07/04 jQuery
详解小程序缓存插件(mrc)
2018/08/17 Javascript
react 父子组件之间通讯props
2018/09/08 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
vue实现购物车选择功能
2020/01/10 Javascript
JavaScript实现世界各地时间显示
2020/09/07 Javascript
[00:17]游戏风云独家报道:DD赛后说出数字秘密 吓死你们啊!
2014/07/13 DOTA
python开发之tkinter实现图形随鼠标移动的方法
2015/11/11 Python
从0开始的Python学习014面向对象编程(推荐)
2019/04/02 Python
python利用openpyxl拆分多个工作表的工作簿的方法
2019/09/27 Python
PyQt5实现简单的计算器
2020/05/30 Python
cookies应对python反爬虫知识点详解
2020/11/25 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
英国皇家造币厂:The Royal Mint
2018/10/05 全球购物
PHP如何防止SQL注入
2014/05/03 面试题
葡萄牙语专业个人求职信
2013/12/10 职场文书
上班迟到检讨书
2014/01/10 职场文书
作风大整顿心得体会
2014/09/10 职场文书
民政局副局长民主生活会个人整改措施
2014/10/04 职场文书
党员四风自我剖析材料
2014/10/07 职场文书
群众路线剖析材料(四风问题)
2014/10/08 职场文书