根據excel表格中的某一列內容,使用python將其拆分成多個excel表格


原始表格如下:

引入的模塊如下:

pip install xlrd

pip install xlwt

運行結果:

打開表格檢查:

 源碼如下:

"""python根據某一列內容拆分成多個excel"""
import xlrd     #對xls等excel文件的讀取
import xlwt     #對xls等excel文件的寫入
workbook = xlrd.open_workbook(r"G:/博客園學習筆記(python)/python操作Excel/model.xlsx")  #打開excel
sheet = workbook.sheet_by_index(0)# 通過索引獲取xls文件第0個sheet
# 讀取列,從0到第4列  從0到第n列
rows = [sheet.row_values(row,0,4) for row in range(sheet.nrows)]
good_lists = {}
# 根據第r[n]列數據進行分割
for r in rows:
    #因為我們是根據商品名稱來切分,商品名在第三列。所以這里是r[2]
    if r[2] not in good_lists:
        good_lists[r[2]] = []
    good_lists[r[2]].append(r)
for (good, lst) in good_lists.items():   #這里的good存的是商品
    wb = xlwt.Workbook()
    #新建sheet
    ws = wb.add_sheet(good)
    #這里先寫入表頭
    ws.write(0,0,'包號')
    ws.write(0,1,'數量')
    ws.write(0,2,'名稱')
    ws.write(0,3,'序號')
    row_idx = 1
    for new_r in lst:
        #逐行寫入
        col_idx = 0
        for v in new_r:
            ws.write(row_idx,col_idx,v)
            col_idx = col_idx + 1
        row_idx = row_idx+1
        #保存的文件名為商品,好分辨切分出來的excel屬於哪和商品
    wb.save('G:/博客園學習筆記(python)/python操作Excel/goods/'+good+'.xlsx')
View Code


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM