Python合并多个Excel数据的方法

yipeiwu_com6年前Python基础

安装模块

1、找到对应的模块   http://www.python-excel.org/

2、用pip install 安装

pip install xlrd pip install XlsxWriter

pip list查看

XlsxWriter示例

import xlsxwriter 
 # 创建一个工作簿并添加一个工作表
 workbook = xlsxwriter.Workbook("demo.xlsx")
 worksheet = workbook.add_worksheet() 
 # 设置列宽
 worksheet.set_column("A:A", 20) 
 # 设置格式
 bold = workbook.add_format({"bold": True})
 # 设置单元格的值
 worksheet.write("A1", "Hello")
 # 带格式的单元格
 worksheet.write("A2", "World")
 # 写一些数字,用行列标识
 worksheet.write(2, 0, 123)
 worksheet.write(3, 0, 123.456, bold)
 # 插入一张图片
 worksheet.insert_image("B5", "C:/Users/Cheng/Desktop/1.png")
 # 关闭文件流
 workbook.close()

运行结果如下:

合并Excel数据思路

Excel是由行和列组成的,所以这里将所有文件中的所有sheet中的数据读取出来组成一个二维数组,然后再写入新的Excel

代码

 import xlrd
 import xlsxwriter 
 source_xls = ["D:/python/1.xlsx", "D:/python/2.xlsx"]
 target_xls = "D:/python/3.xlsx"
 # 读取数据
 data = []
 for i in source_xls:
  wb = xlrd.open_workbook(i)
  for sheet in wb.sheets():
   for rownum in range(sheet.nrows):
    data.append(sheet.row_values(rownum))
 print(data)
 # 写入数据
 workbook = xlsxwriter.Workbook(target_xls)
 worksheet = workbook.add_worksheet()
 font = workbook.add_format({"font_size":14})
 for i in range(len(data)):
  for j in range(len(data[i])):
   worksheet.write(i, j, data[i][j], font)
 # 关闭文件流
 workbook.close()

运行结果

体会

刚开始学习Python,可能是由于看惯了Java代码的缘故吧,初学起来感觉语法怪怪的,跟Java有些类似,又感觉和JavaScript,Perl这种有点像。。。

总结

以上所述是小编给大家介绍的Python合并多个Excel数据的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python中退出多层循环的方法

1、定义标记变量;利用变量值的变化退出循环 # 第一种嵌套形式 a = [[1, 2, 3], [5, 5, 6], [7, 8, 9]] # init_i = 0 # init_j...

python中list列表的高级函数

在Python所有的数据结构中,list具有重要地位,并且非常的方便,这篇文章主要是讲解list列表的高级应用,基础知识可以查看博客。 此文章为python英文文档的翻译版本,你也可以...

python的pytest框架之命令行参数详解(上)

python的pytest框架之命令行参数详解(上)

前言 pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作。pytest提供了丰富的功能,包括assert重写,第三方插件,以及其他测试工具无法比...

在Python中使用next()方法操作文件的教程

 next()方法当一个文件被用作迭代器,典型例子是在一个循环中被使用,next()方法被反复调用。此方法返回下一个输入行,或引发StopIteration异常EOF时被命中。...

python与C互相调用的方法详解

前言 最近因为工作的需要,在考虑基于udp做一个用于网游战斗中的数据同步协议,为了前期测试数据,决定先做一个外部的代理tunnel,原理是在server端和client端分别建立网络转发...