python根据某一列内容拆分成多个excel

python根据某一列内容拆分成多个excel
一个excel根据某一列内容分成多个excel
例如有如下文件内容
在这里插入图片描述

然后我需要按照城市来切分表格,
也就是将这一张表分成6个excel!
接下来开始为大家展示代码部分!
这部分代码会涉及到两个模块,xlrd和xlwt。这两个模块是需要安装的。所以首先就是安装这两个模块

pip install xlrd
pip install xlwt

这两个模块的作用
xlwt:对xls等excel文件的写入
xlrd:对xls等excel文件的读取

import xlrd
import xlwt
workbook = xlrd.open_workbook(r"C:/Users/Administrator/Desktop/aaa/全国.xlsx")#打开excel
sheet = workbook.sheet_by_index(0)# 通过索引获取xls文件第0个sheet
# 读取列,从0到第2列
rows = [sheet.row_values(row,0,2) for row in range(sheet.nrows)]
city_lists = {}
# 根据第r[n]列数据进行分割
for r in rows:
    #因为我们是根据城市来切分,城市在第一列。所以这里是r[0]
    if r[0] not in city_lists:
        city_lists[r[0]] = []
    city_lists[r[0]].append(r)
for (city, lst) in city_lists.items():#这里的city存的是城市
    wb = xlwt.Workbook()
    #新建sheet
    ws = wb.add_sheet(city)
    #这里先写入表头
    ws.write(0, 0, '城市')
    ws.write(0,1,'数量')
    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('C:/Users/Administrator/Desktop/aaa/'+city+'.xlsx')

运行结果:
在这里插入图片描述

打开表格检查:
在这里插入图片描述
内容没有问题!完成!!!

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值