python将两个excel合并到一个excel,python处理多个excel文件

  python将两个excel合并到一个excel,python处理多个excel文件

  利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的超过文件中。

  完整代码

  #-*-编码:utf-8 -*-

  #将多个超过文件合并成一个

  导入读操作

  导入xlsxwriter

  #打开一个超过文件

  def open_xls(文件):

  fh=xlrd.open_workbook(文件)

  返回消防栓(Fire Hydrant的缩写)

  #获取超过中所有的表表

  定义获取表(fh):

  返回fh.sheets()

  #获取表表的行数

  定义获取行(fh,单页):

  table=fh.sheets()[sheet]

  返回table.nrows

  #读取文件内容并返回行内容

  def getFilect(file,shnum):

  fh=open_xls(文件)

  table=fh.sheets()[shnum]

  num=table.nrows

  对于范围内的行(数量):

  rdata=table.row_values(row)

  datavalue.append(rdata)

  返回数据值

  #获取表表的个数

  def getshnum(fh):

  sh=获取工作表(fh)

  对于嘘中的表:

  x=1

  返回x

  if __name__==__main__ :

  #定义要合并的超过文件列表

  allxls=[F:/test/excel1.xlsx , F:/test/excel2.xlsx]

  #存储所有读取的结果

  数据值=[]

  对于allxls中的fl:

  fh=open_xls(fl)

  x=getshnum(fh)

  对于范围(十)中的shnum:

  打印(正在读取文件: str(fl)的第 str(shnum)个表表的内容.)

  右值=getFilect(fl,shnum)

  #定义最终合并后生成的新文件

  endfile=F:/test/excel3.xlsx

  wb1=xlsxwriter .工作簿(结束文件)

  #创建一个表工作对象

  ws=wb1.add_worksheet()

  对于范围内的(len(右值)):

  对于范围内的b(len(右值[答]):

  c=右值[甲][乙]

  ws.write(a,b,c)

  wb1.close()

  打印(文件合并完成)

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

  源文件excel1:

  源文件excel2:

  运行结果:

  合并后的excel3:

python将两个excel合并到一个excel,python处理多个excel文件