目录
可以处理excel文件的python模块有很多,如xlsxwriter,xlrd,xlwt,xlutils,openpyxl和xlwings等,其中对比如下
功能/模块 | xlsxwriter | xlrd | xlwt | xlutils | openpyxl | xlwings |
读 | × | √ | × | √ | √ | √ |
写 | √ | × | √ | √ | √ | √ |
修改 | × | × | × | √ | √ | √ |
支持xls格式 | × | √ | √ | √ | × | √ |
支持xlsx格式 | √ | √ | √ | × | √ | √ |
支持批量操作 | × | × | × | × | × | √ |
通过上面表格可以看出,xlwings功能最为齐全
一、创建工作簿
import xlwings as xw
app = xw.App(visible=True,add_book=False)#启动excel程序窗口
workbook = app.books.add()#新建工作簿
1.函数介绍
xlwings.APP(visible,add_book)
参数:
- visible:用来设置excel程序可见性,如果为true,表示显示excel程序窗口,如果为false,表示隐藏excel程序窗口
- add_book:用来设置启动excel程序窗口后是否新建工作簿,如果为true,表示新建一个工作簿,如果为false,表示不新建工作
二、保存工作簿
import xlwings as xw
app = xw.App(visible=True,add_book=False)
workbook = app.books.add()
#2.保存工作簿
workbook.save('d:\\example.xlsx')
workbook.close()#关闭工作簿
app.quit()#退出excel程序
这段代码会在D盘下生成一个名为example.xlsx的工作簿
1.函数介绍
save(路径和文件名)
用来保存前面创建的空白工作簿,
一个文件的路径有2种标识方式:
- 绝对路径:表示文件的路径总是从根文件夹开始
- 相对路径:表示相对于当前运行的代码文件的路径
close()用来关闭创建的工作簿
quit()用来退出excel程序
三、打开工作簿
import xlwings as xw
app = xw.App(visible=True,add_book=False)
#3.打开工作簿
workbook = app.books.open(r'd:\example.xlsx')
四、操作工作表和单元格
1.输入文本
import xlwings as xw
app = xw.App(visible=True,add_book=False)
#3.打开工作簿
workbook = app.books.open(r'd:\example.xlsx')
#输入文本
worksheet = workbook.sheets['Sheet1']#选中工作表sheet1
worksheet.range('A1').value = '编号'#在单元格A1中输入内容
效果:
2.在打开的工作簿中新增一个工作表
import xlwings as xw
app = xw.App(visible=True,add_book=False)
#3.打开工作簿
workbook = app.books.open(r'd:\example.xlsx')
#新增工作表
worksheet = workbook.sheets.add('产品统计表')
效果:
3.综合应用
import xlwings as xw
app = xw.App(visible=True,add_book=False)
workbook = app.books.add()
worksheet = workbook.sheets.add('产品统计表')
worksheet.range('A1').value = '编号'#在单元格A1中输入内容
workbook.save(r'd:\北京.xlsx')
workbook.close()
app.quit()
效果:在D盘下新建一个北京的表格,该表格有一个名为“产品统计表”的工作表,该工作表的单元格A1中输入内容“编号”