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 相关文章推荐
深入理解Javascript中的this关键字
Mar 27 Python
Python2.x中文乱码问题解决方法
Jun 02 Python
基于python中的TCP及UDP(详解)
Nov 06 Python
Python 实现引用其他.py文件中的类和类的方法
Apr 29 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
Mar 14 Python
详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法
Jul 06 Python
Pandas之排序函数sort_values()的实现
Jul 09 Python
python读取并写入mat文件的方法
Jul 12 Python
Python使用PyQt5/PySide2编写一个极简的音乐播放器功能
Feb 07 Python
vue学习笔记之动态组件和v-once指令简单示例
Feb 29 Python
python 生成器需注意的小问题
Sep 29 Python
简单谈谈Python面向对象的相关知识
Jun 28 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
建立动态的WML站点(二)
2006/10/09 PHP
《APMServ 5.1.2》使用图解
2006/10/23 PHP
PHP开启gzip页面压缩实例代码
2010/03/11 PHP
php结合表单实现一些简单功能的例子
2011/06/04 PHP
关于JSON以及JSON在PHP中的应用技巧
2013/11/27 PHP
thinkphp5.1框架模板布局与模板继承用法分析
2019/07/19 PHP
javaScript中Math()函数注意事项
2015/06/18 Javascript
如何用js 实现依赖注入的思想,后端框架思想搬到前端来
2015/08/03 Javascript
jquery validate和jquery form 插件组合实现验证表单后AJAX提交
2015/08/26 Javascript
javascript实现密码验证
2015/11/10 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果
2016/07/07 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
JavaScript中值类型和引用类型的区别
2017/02/23 Javascript
微信小程序实现滑动删除效果
2017/05/19 Javascript
node跨域请求方法小结
2017/08/25 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
JavaScript实现的前端AES加密解密功能【基于CryptoJS】
2018/08/28 Javascript
Python中urllib2模块的8个使用细节分享
2015/01/01 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
解决pandas使用read_csv()读取文件遇到的问题
2018/06/15 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
python中如何实现将数据分成训练集与测试集的方法
2019/09/13 Python
python有几个版本
2020/06/17 Python
python如何删除文件、目录
2020/06/23 Python
利于python脚本编写可视化nmap和masscan的方法
2020/12/29 Python
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
char型变量中能不能存贮一个中文汉字
2015/07/08 面试题
会计岗位职责范本
2014/03/07 职场文书
《李广射虎》教学反思
2014/04/27 职场文书
治庸问责心得体会
2014/09/12 职场文书
2014年重阳节活动策划方案书
2014/09/16 职场文书
2015年档案管理工作总结
2015/04/08 职场文书
2015年乡镇残联工作总结
2015/05/13 职场文书
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL