Python Excel技术对比
-
XlsxWriter,xlrd&xlwt,OpenPyXL,Microsoft Excel API对比
- XlsxWriter
这是除Excel自身之外功能最强的工具了。比如有功能:字体设置、前景色背景色、border设置、视图缩放(zoom)、单元格合并、autofilter、freeze panes、公式、data validation、单元格注释、行高和列宽设置等等。 - xlrd&xlwt
这个工具虽然易用,但功能相对较弱。其中的xlrd能够读取xlrd和xlsx,功能勉强可以接受。但xlwt只能进行最基本的写入数据和公式,故我一般替代使用XlsxWriter。
建议使用姿势(xlrd+xlsxWriter)
鉴于xlrd的易用及xlsxWriter强大的写数据功能,采用xlrd+xlsxWriter组合的方法更加实用。首先使用xlrd读取xls中的数据,然后新建xlsx文件,并将修改后的数据通过XlsxWriter写入xlsx文件中。
参考代码
import xlsxwriter as wx
import sys
import xlrd
def xlrd_open_excel(file='file.xls'):
try:
data = xlrd.open_workbook(file)
return data
except Exception, e:
print str(e)
row_title = ["1","2","3"]
# 创建目的数据表
dst_wb = wx.Workbook('dst.xlsx')
# 打开源数据
data_src = xlrd_open_excel("src.xls")
# 第一行写入行标题
worksheet = dst_wb.add_worksheet()
worksheet_wang = dst_wb.add_worksheet()
for i in range(0, len(row_title)):
worksheet.write(0, i, row_title[i])
# 读取源数据的第一个sheet
table_src = data_src.sheets()[0]
print table_src.cell(0, 0)
更详细的xlsxwriter和xlrd的用法请参考:
python使用xlsxwriter
python使用xlrd
python模块:xlsxwriter和xlrd相结合读取、写入excel文件