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使用urllib2模块实现断点续传下载的方法
Jun 17 Python
举例区分Python中的浅复制与深复制
Jul 02 Python
python多进程共享变量
Apr 06 Python
python 实现一个贴吧图片爬虫的示例
Oct 12 Python
Python列表删除的三种方法代码分享
Oct 31 Python
Python操作MySQL数据库的三种方法总结
Jan 30 Python
Python3.4学习笔记之 idle 清屏扩展插件用法分析
Mar 01 Python
python浪漫表白源码
Apr 05 Python
Python异步操作MySQL示例【使用aiomysql】
May 16 Python
Django Docker容器化部署之Django-Docker本地部署
Oct 09 Python
Python几种常见算法汇总
Jun 02 Python
Jupyter Notebook内使用argparse报错的解决方案
Jun 03 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 常用字符串函数总结
2008/03/15 PHP
PHP后期静态绑定实例浅析
2018/12/21 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
Javascript 两个窗体之间传值实现代码
2009/09/25 Javascript
javascript 计算两个整数的百分比值
2009/12/26 Javascript
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
javascript每日必学之封装
2016/02/23 Javascript
微信小程序 前端源码逻辑和工作流详解
2016/10/08 Javascript
nodejs结合socket.io实现websocket通信功能的方法
2018/01/12 NodeJs
jQuery+ajax读取json数据并按照价格排序示例
2018/03/28 jQuery
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
jquery实现进度条状态展示
2020/03/26 jQuery
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
[04:49]2014DOTA2国际邀请赛 Newbee顺利挺进总决赛 ImbaTV独家专访
2014/07/19 DOTA
使用python实现knn算法
2017/12/20 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
对python 匹配字符串开头和结尾的方法详解
2018/10/27 Python
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
python编写简单端口扫描器
2019/09/04 Python
Django对接支付宝实现支付宝充值金币功能示例
2019/12/17 Python
Python阶乘求和的代码详解
2020/02/14 Python
Django Admin 上传文件到七牛云的示例代码
2020/06/20 Python
Python不支持 i ++ 语法的原因解析
2020/07/22 Python
针对HTML5的Web Worker使用攻略
2015/07/12 HTML / CSS
大三自我鉴定范文
2013/10/05 职场文书
办公室前台岗位职责范本
2013/12/10 职场文书
新学期教师寄语
2014/04/02 职场文书
校园活动策划方案
2014/06/13 职场文书
双拥工作宣传标语
2014/06/26 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
Python中tkinter的用户登录管理的实现
2021/04/22 Python
OpenCV3.3+Python3.6实现图片高斯模糊
2021/05/18 Python
USB TYPE-C 或将成为所有智能手机充电标准
2022/04/21 数码科技
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python
Python使用pandas导入csv文件内容的示例代码
2022/12/24 Python