最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python進行兩個表格對比的方法

 更新時間:2018年06月27日 14:10:01   作者:黑面狐  
今天小編就為大家分享一篇python進行兩個表格對比的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

如下所示:

# -*- coding:utf-8 -*-
import xlrd
import sys
import re
import json

dict1={}
dict2={}
mylist=[u'系統(tǒng)運維管理',u'安全管理機構(gòu)',u'安全管理制度',u'人員安全管理',u'網(wǎng)絡(luò)安全',u'物理安全',u'網(wǎng)絡(luò)安全',u'主機安全',u'應(yīng)用安全',u"網(wǎng)絡(luò)安全",u"主機安全",u"主機安全",u'系統(tǒng)建設(shè)管理']
def check():
  data=xlrd.open_workbook('test.xls')
  for i in range(0,13):
    print u"第%s個表格"%(i+1)
    print mylist[i]
    print "-"*60
    try:
      table=data.sheets()[i]
    except IndexError,e:
      break  
    nrows=table.nrows
    count=1
    if i<5:
      m=10
    else:
      m=16
    for j in range(m,nrows):
      cell_1=table.cell(j,2).value
      #print cell_1,
      cell_2=table.cell(j,3).value
      nu=re.split(r'\)',cell_2)
      num=re.split(r'\)',nu[0])
      if num is not None:
        #print num[0],
        pass
      else:
        print u"沒有標(biāo)記序號"
      try:
        if j<nrows:
          if table.cell(j,2).value==table.cell(j+1,2).value:
            count+=1
          else:
            print u"檢查項【%s】共有【%s】項"%(table.cell(j,2).value,count)
            key=mylist[i]+table.cell(j,2).value
            dict1[key]=count
            count=1
        else:
          count+=1
          print u"檢查項【%s】共有【%s】項"%(table.cell(j,2).value,count)
          key=mylist[i]+table.cell(j,2).value
          dict1[key]=count
        
      except IndexError,e:
        #count+=1
        print u"檢查項【%s】共有【%s】項"%(table.cell(j,2).value,count)
        key=mylist[i]+table.cell(j,2).value
        dict1[key]=count
    print "-"*60
  print json.dumps(dict1, encoding='UTF-8', ensure_ascii=False)
  print u"完成excel表格讀取-Thanks"

def ASGcheck(filename):
  data=xlrd.open_workbook(filename)
  table=data.sheets()[0]
  print "-"*60 
  nrows=table.nrows
  count=1
  for j in range(1,nrows):
    cell_1=table.cell(j,2).value
    #print cell_1,
    cell_2=table.cell(j,3).value
    nu=re.split(r'\)',cell_2)
    num=re.split(r'\)',nu[0])
    if num is not None:
      #print num[0],
      pass
    else:
      print u"沒有標(biāo)記序號"
    try:
      if j<nrows:
        if table.cell(j,3).value==table.cell(j+1,3).value:
          count+=1
        else:
          print u"安全層面【%s】檢查項【%s】共有【%s】項"%(table.cell(j,2).value,table.cell(j,3).value,count)
          key=table.cell(j,2).value+table.cell(j,3).value
          dict2[key]=count
          count=1
      else:
        count+=1
        print u"安全層面【%s】檢查項【%s】共有【%s】項"%(table.cell(j,2).value,table.cell(j,3).value,count)
        key=table.cell(j,2).value+table.cell(j,3).value
        dict2[key]=count
      
    except IndexError,e:
      #count+=1
      print u"安全層面【%s】檢查項【%s】共有【%s】項"%(table.cell(j,2).value,table.cell(j,3).value,count)
      key=table.cell(j,2).value+table.cell(j,3).value
      dict2[key]=count
  #print json.dumps(dict2, encoding='UTF-8', ensure_ascii=False)
  print "-"*60
def standard():
  choiceA=raw_input(u"請輸入A的等級:A2,A3,A4")
  choiceS=raw_input(u"請輸入S的等級:S2,S3,S4")
  choiceG=raw_input(u"請輸入G的等級:G2,G3,G4")
  Aname=str(choiceA)+".xlsx"
  Sname=str(choiceS)+".xlsx"
  Gname=str(choiceG)+".xlsx"
  check()
 
  def compare():
    print "*"*60
    for key in dict2:
      try:
        if dict2[key]!=dict1[key]:
          print u"存在異常項"
          print u"從程序中導(dǎo)出的檢查項【%s】共有%s項"%(key,json.dumps(dict1[key], encoding='UTF-8', ensure_ascii=False))
          print u"從分支查詢的檢查項【%s】共有%s項"%(key,json.dumps(dict2[key], encoding='UTF-8', ensure_ascii=False))
        else:
          pass
      
      except KeyError,e:
        print u"分支中的檢查項【%s】共有%s項"%(key,json.dumps(dict2[key], encoding='UTF-8', ensure_ascii=False)),
        print u"程序中沒有查詢到該項"


  #比較分支結(jié)果和程序?qū)С龅慕Y(jié)果  
  ASGcheck(Aname)
  compare()
  ASGcheck(Sname)
  compare()
  ASGcheck(Gname)
  compare()
standard()
#ASGcheck('S3.xlsx')

以上這篇python進行兩個表格對比的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • pyqt串口通信的項目實踐

    pyqt串口通信的項目實踐

    串口通信工業(yè)控制上面常用的,本文主要介紹了pyqt串口通信的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-12-12
  • 詳細介紹python類及類的用法

    詳細介紹python類及類的用法

    前面我們介紹了類的創(chuàng)建及面向?qū)ο蟮娜筇匦?本篇將詳細介紹Python 類的成員,成員修飾符,類的特殊成員.需要的朋友可以參考下
    2021-05-05
  • 如何用Python將圖片轉(zhuǎn)為字符畫

    如何用Python將圖片轉(zhuǎn)為字符畫

    本文主要介紹了用Python將圖片轉(zhuǎn)為黑白字符畫的方法,使用ascii字符把圖片轉(zhuǎn)為黑白字符畫,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Python3.6.0+opencv3.3.0人臉檢測示例

    Python3.6.0+opencv3.3.0人臉檢測示例

    這篇文章主要為大家詳細介紹了Python3.6.0+opencv3.3.0人臉檢測示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Python關(guān)于反射的實例代碼分享

    Python關(guān)于反射的實例代碼分享

    在本篇文章里小編給大家整理的是一篇關(guān)于Python關(guān)于反射的實例代碼分享,有需要的朋友們可以參考下。
    2020-02-02
  • Python Web框架Flask信號機制(signals)介紹

    Python Web框架Flask信號機制(signals)介紹

    這篇文章主要介紹了Python Web框架Flask信號機制(signals)介紹,本文介紹Flask的信號機制,講述信號的用途,并給出創(chuàng)建信號、訂閱信號、發(fā)送信號的方法,需要的朋友可以參考下
    2015-01-01
  • 粗暴解決CUDA out of memory的問題

    粗暴解決CUDA out of memory的問題

    這篇文章主要介紹了粗暴解決CUDA out of memory的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • pygame播放視頻并實現(xiàn)音視頻同步的解決方案

    pygame播放視頻并實現(xiàn)音視頻同步的解決方案

    本篇提供了pygame播放視頻的兩個方案,第一個方案是網(wǎng)上找的現(xiàn)成的,第二個方案則是參考了opencv(主流方案)自己逆向思維做的,還未經(jīng)過實際驗證,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • Python?自動控制原理?control的詳細解說

    Python?自動控制原理?control的詳細解說

    這篇文章主要介紹了Python自動控制原理control的詳細解說,文章圍繞主題展開對Python?control的介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-07-07
  • 深入探討Python中的內(nèi)置類屬性`__repr__`

    深入探討Python中的內(nèi)置類屬性`__repr__`

    在Python中,__repr__是一個特殊的內(nèi)置類屬性,用于定義類的字符串表示形式,本文將深入探討__repr__的作用、用法以及一些實際應(yīng)用場景,希望對大家有所幫助
    2023-12-12

最新評論

林甸县| 内江市| 古浪县| 溆浦县| 琼中| 和田县| 翁牛特旗| 镇安县| 乐山市| 革吉县| 大关县| 阳春市| 南京市| 宁城县| 八宿县| 湾仔区| 宜城市| 历史| 乐昌市| 泰顺县| 祥云县| 临洮县| 大石桥市| 厦门市| 福州市| 枣强县| 亳州市| 怀来县| 城固县| 上蔡县| 怀集县| 竹山县| 奎屯市| 平泉县| 田东县| 琼海市| 修文县| 鹤峰县| 福贡县| 屏南县| 增城市|