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 encode和decode的妙用
Sep 02 Python
对Python进行数据分析_关于Package的安装问题
May 22 Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
Jul 06 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
Nov 01 Python
python实现redis三种cas事务操作
Dec 19 Python
pygame游戏之旅 添加icon和bgm音效的方法
Nov 21 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
Jul 11 Python
Django rest framework jwt的使用方法详解
Aug 08 Python
用Python调用win命令行提高工作效率的实例
Aug 14 Python
python创建与遍历List二维列表的方法
Aug 16 Python
Python爬虫HTPP请求方法有哪些
Jun 03 Python
彻底解决Python包下载慢问题
Nov 15 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
windows下PHP APACHE MYSQ完整配置
2007/01/02 PHP
PHP中$_SERVER的详细参数与说明
2008/07/29 PHP
PHP JSON格式的中文显示问题解决方法
2015/04/09 PHP
php封装db类连接sqlite3数据库的方法实例
2017/12/19 PHP
详解PHP文件的自动加载(autoloading)
2018/02/04 PHP
PHP5.0~5.6 各版本兼容性cURL文件上传功能实例分析
2018/05/11 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
载入进度条 效果
2006/07/08 Javascript
Js 本页面传值实现代码
2009/05/17 Javascript
JavaScript 作用域链解析
2014/11/13 Javascript
JavaScript html5 canvas画布中删除一个块区域的方法
2016/01/26 Javascript
JavaScript中的prototype原型学习指南
2016/05/09 Javascript
jQuery实现frame之间互通的方法
2017/06/26 jQuery
jQuery实现的弹幕效果完整实例
2017/09/06 jQuery
使用Vue完成一个简单的todolist的方法
2017/12/01 Javascript
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
详解VSCode配置启动Vue项目
2019/05/14 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
js实现简单的点名器随机色实例代码
2020/09/20 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
从零学python系列之数据处理编程实例(二)
2014/05/22 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
利用Python如何制作好玩的GIF动图详解
2018/07/11 Python
windows下numpy下载与安装图文教程
2019/04/02 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
python模拟点击在ios中实现的实例讲解
2020/11/26 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
移动端html5判断是否滚动到底部并且下拉加载
2019/11/19 HTML / CSS
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
库房管理员岗位职责
2014/03/09 职场文书
2019西餐厅创业计划书范文!
2019/07/12 职场文书
传单、海报早OUT了,另类传单营销方案送给你!
2019/07/15 职场文书
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python
Golang解析JSON对象
2022/04/30 Golang