python excelデータの抽出と整理を実現

1287 ワード

#!coding:utf-8
# Author:pymingming

import xlrd
import re
from xlrd import open_workbook
from xlutils.copy import copy
def read(file, sheet_index=0):
    workbook = xlrd.open_workbook(file)
    sheet = workbook.sheet_by_index(sheet_index)
    # print("     :", sheet.name, "  :", sheet.nrows, "  :", sheet.ncols)
    data = []
    for i in range(0, sheet.nrows):
        data.append(sheet.row_values(i))
    return data
def reg(data):
    regexp = r'MGG_\d{5}'
    pat = re.compile(regexp)
    MGG_all = re.findall(pat, str(data))  #   string  
    Mgg_unique = set(MGG_all)
    return Mgg_unique

rexcel = open_workbook("a.xls") #  wlrd         excel  
rows = rexcel.sheets()[0].nrows #  wlrd              
excel = copy(rexcel) #  xlutils   copy   xlrd      xlwt   
table = excel.get_sheet(0) #  xlwt           sheet
values = reg(read(r'J:\pymingming\10.23\zhu.xlsx'))
keys = reg(read(r'J:\pymingming\10.23\zhu.xlsx'))
row = rows
for (value,key) in zip(values,keys):
    table.write(row, 0, value) # xlwt      ,      、 、 
    table.write(row, 2, key) # xlwt      ,      、 、 
    row += 1
excel.save("a.xls") # xlwt       ,          excel

転載先:https://www.cnblogs.com/Zhu-Xueming/p/7732761.html