python基础学习四:合并Excel表格小程序

import xlrd
import xlsxwriter
import os
#在原有的基础上,对程序进行完善:因为大多数合并的表格,他们的格式都是一样的,就拿我自己来说,
#把很多同学填写的信息进行合并,他们使用的表格的格式都是一样的,所以就会有很多重复的表头
#当然,这个可以自己去掉,但是就有点浪费时间了,去掉重复的表头我感觉是最基本的功能

Excel_path="F:/python/Excel文件夹"
source_excel_name_list=os.listdir(Excel_path)
target_excel_name="信息统计.xls"
#print(source_excel_name_list)

source_excel=[Excel_path+"/"+i for i in source_excel_name_list]
target_excel = Excel_path+"/"+target_excel_name

# 读取数据;fr是 读文件流
Excel_data = []
#表示是第几个文件
flag=0
for i in source_excel:
    #依次打开文件列表中的每一个Excel文件
    fr = xlrd.open_workbook(i)
    #获取Excel文件的所有sheet,并遍历
    for sheet in fr.sheets():
        #获取每一个sheet的多行数据,并每一一行的将数据写入到data列表中
        for rownum in range(sheet.nrows):
            #sheet.row_values()返回的是指定行数的数据,每个格是一个元素,每一行是一个列表
            #rownum的设置:每个文件有n行是相同的,就设置为rownum<n
            if ((flag>0)&(rownum<2)):
                continue
            Excel_data.append(sheet.row_values(rownum))
    flag+=1
#print(Excel_data)


# 写入数据;fw是 写文件流
fw = xlsxwriter.Workbook(target_excel)
worksheet = fw.add_worksheet()
##设置字体大小,像大小、颜色啥的在这里其实没必要了
##因为主要是合并,字体啥的整体修改就行了,如果每一部分字体要求不同,用代码的话就比较麻烦了。
font = fw.add_format({"font_size":14})
#遍历最外层数据list中的每一个元素,也即小数据list
for i in range(len(Excel_data)):
    #再遍历每一个小数据list中的元素,也即每一个单元格的数据
    for j in range(len(Excel_data[i])):
        #i,j就是用来定位的
        worksheet.write(i, j, Excel_data[i][j], font)

# 关闭文件流
fw.close()
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

耐心的小黑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值