欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python對execl 處理操作代碼

 更新時間:2020年06月22日 08:56:09   作者:石頭,等待  
這篇文章主要介紹了python對execl 處理操作,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1. 讀取execl

1.前提需要安裝xlrd模塊,這個在網(wǎng)上可以找安裝教程,這里就不寫了

2. 打開表格

3. 讀取表格的sheet

4. 按行讀取數(shù)據(jù)或者列讀取數(shù)據(jù)或者單元格讀取數(shù)據(jù)

實際操作:

import xlrd
import xlwt
from xlutils.copy import copy
 
def info_row_col_execl(file_name):
  myworkbook = xlrd.open_workbook(file_name)
  mySheetlist = myworkbook.sheets()
  mysheet = mySheetlist[0]
  nrows = mysheet.nrows
  ncols = mysheet.ncols
  return nrows,ncols
 
def read_execl(filename):
  myworkbook = xlrd.open_workbook(filename)
  mySheetlist = myworkbook.sheets()
  mysheet = mySheetlist[0]
  return mysheet
 
def com_exel(file_name_dai,file_name_all):
  dai_rows, dai_cols = info_row_col_execl(file_name_dai)
  all_rows,all_cols = info_row_col_execl(file_name_all)
  print(dai_rows, dai_cols)
  print(all_rows,all_cols)
 
def read_execl_values(file_name):
  list_execl_values = []
  mysheet = read_execl(file_name)
  execl_rows, execl_cols = info_row_col_execl(file_name)
  myRowValues_name= mysheet.row_values(0)
  for nrow in range(1,execl_rows):
    myRowValues= mysheet.row_values(nrow)
    #print(myRowValues)
    myRow_name_value=dict(zip(myRowValues_name,myRowValues))
    list_execl_values.append(myRow_name_value)
  return list_execl_values
 
def com_execl_values(file_name_dai,file_name_all,key_list):
  dai_list_execl_values = read_execl_values(file_name_dai)
  all_list_execl_values = read_execl_values(file_name_all)
  row_num = 1
  for i in dai_list_execl_values:
    dai_list_execl_value = i
    dai_len_row = len(dai_list_execl_value)
    for k in all_list_execl_values:
      all_list_execl_value = k
      result = compare_two_dict(dai_list_execl_value,all_list_execl_value,key_list)
      if result == "Pass":
        #print(dai_list_execl_value,all_list_execl_value,result)
        print(dai_list_execl_value['ID'],dai_list_execl_value['名字'],)
        print(all_list_execl_value['班級'],all_list_execl_value['教師'])
        write_execl(file_name_dai,all_list_execl_value['班級'],all_list_execl_value['教師'],row_num,dai_len_row)
        break;
    row_num = row_num + 1   
   
def write_execl(file_name_dai,all_list_execl_value_1,all_list_execl_value_2,row_num,dai_len_row):
  open_execl = xlrd.open_workbook(file_name_dai)
  open_execl_copy = copy(open_execl)
  open_execl_copy_sheet = open_execl_copy.get_sheet(0)
  open_execl_copy_sheet.write(row_num,dai_len_row-3,all_list_execl_value_1)
  open_execl_copy_sheet.write(row_num,dai_len_row-2,all_list_execl_value_2)
  open_execl_copy.save(file_name_dai)
   
 
def compare_two_dict(dai_dict,all_dict,key_list):
  flag = True
  dai_dict_key = dai_dict.keys()
  all_dict_key = all_dict.keys()
  if len(key_list) != 0:
    for key in key_list:
      if key in dai_dict_key and key in all_dict_key:
        if dai_dict[key] == all_dict[key]:
          #print(dai_dict[key],all_dict[key])
          flag = flag & True
        else:
          flag = flag & False
      else:
        raise Exception('key_list contains error key')
  else:
    raise Exception('key_list is null')
 
  if flag:
    result = "Pass"
  else:
    result = "Failed"
  #print(result)
  return result
 
if __name__ == '__main__':
  file_name_dai = 'name_1.xlsx'
  file_name_all = 'name.xlsx'
  key_list = ['ID', '名字']
  com_execl_values(file_name_dai,file_name_all,key_list)

總結(jié)

到此這篇關(guān)于python對execl 處理操作代碼的文章就介紹到這了,更多相關(guān)python對execl 處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在django中實現(xiàn)choices字段獲取對應字段值

    在django中實現(xiàn)choices字段獲取對應字段值

    這篇文章主要介紹了在django中實現(xiàn)choices字段獲取對應字段值,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python打印日志方法的使用教程(logging模塊)

    python打印日志方法的使用教程(logging模塊)

    Python標準庫自帶日志模塊logging,logging中涉及到4個核心組件,這些組件構(gòu)建了logging體系,下面這篇文章主要給大家介紹了關(guān)于python打印日志方法的使用教程,需要的朋友可以參考下
    2022-06-06
  • 詳解如何使用Python處理INI、YAML和JSON配置文件

    詳解如何使用Python處理INI、YAML和JSON配置文件

    在軟件開發(fā)中,配置文件是存儲程序配置信息的常見方式,INI、YAML和JSON是常用的配置文件格式,各自有著特定的結(jié)構(gòu)和用途,Python擁有豐富的庫和模塊,本文將重點探討如何使用Python處理這三種格式的配置文件,需要的朋友可以參考下
    2023-12-12
  • 基于Python實現(xiàn)視頻轉(zhuǎn)字符畫動漫小工具

    基于Python實現(xiàn)視頻轉(zhuǎn)字符畫動漫小工具

    大家都知道視頻就是一幀一幀的圖片構(gòu)成的。那么想要實現(xiàn)將視頻轉(zhuǎn)換為字符畫,就要將一部視頻全部逐幀拆解成圖片,然后采取和以前相同的將圖片轉(zhuǎn)換為字符畫的算法即可。本文將詳細為大家介紹如何實現(xiàn),需要的可以參考一下
    2021-12-12
  • Django中redis的使用方法(包括安裝、配置、啟動)

    Django中redis的使用方法(包括安裝、配置、啟動)

    下面小編就為大家分享一篇Django中redis的使用方法(包括安裝、配置、啟動),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • windows10系統(tǒng)中安裝python3.x+scrapy教程

    windows10系統(tǒng)中安裝python3.x+scrapy教程

    本文給大家主要介紹了在windows10系統(tǒng)中安裝python3以及scrapy框架的教程以及有可能會遇到的問題的解決辦法,希望大家能夠喜歡
    2016-11-11
  • Python變量名詳細規(guī)則詳細變量值介紹

    Python變量名詳細規(guī)則詳細變量值介紹

    這篇文章主要介紹了Python變量名詳細規(guī)則詳細變量值,Python需要使用標識符給變量命名,其實標識符就是用于給程序中變量、類、方法命名的符號(簡單來說,標識符就是合法的名稱,下面葛小編一起進入文章里哦阿姐更多詳細內(nèi)容吧
    2022-01-01
  • Python 沒有main函數(shù)的原因

    Python 沒有main函數(shù)的原因

    這篇文章主要介紹了Python 沒有main函數(shù)的原因,文中講解非常詳細,示例代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • Python全棧之文件函數(shù)和函數(shù)參數(shù)

    Python全棧之文件函數(shù)和函數(shù)參數(shù)

    這篇文章主要為大家介紹了Python的文件函數(shù)和函數(shù)參數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Python中的hashlib模塊解析

    Python中的hashlib模塊解析

    這篇文章主要介紹了Python中的hashlib模塊解析,hashlib是一個提供字符加密功能的模塊,包含MD5和SHA的加密算法,具體支持md5,sha1, sha224, sha256, sha384, sha512等算法, 該模塊在用戶登錄認證方面應用廣泛,對文本加密也很常見,需要的朋友可以參考下
    2023-09-09

最新評論