用python操作excel的总结

1.利用xlrd、xlwt、xlutils这三个库组合操作

xlrd:用来读excel文件,但是只读,不能写

xlwt:用来写excel文件,但是只写,不能更改已存在的excel中的数据

xlutils:是将xlrd读入的excel文件copy一份,成为xlwt的对象,这样copy的那一份就可以写入了,直接write已经存在的单元格,就是修改,修改完成后保存为和原来的一样的文件名,就会覆盖原excel文件,这样就完成了excel文件的修改

优点:读取excel文件的速度很快,只是修改时copy文件要花上一些时间

缺点:1.只支持2003版的excel,即后缀名为xls的文件

           2.不能删除excel的行和列,以及sheet表

 

2.利用openpyxl库

openpyxl这个库刚好弥补了xlrd+xlwt+xlutils组合不能操作2007版excel以上(即后缀名为xlsx)文件的缺陷,它可以操作xlsx文件

优点:1.支持对2007版以上的excel的操作

           2.支持对excel单元格的直接修改

缺点:1.只可以操作xlsx文件,不能操作xls文件

           2.读取文件速度非常非常慢,慢到难以忍受

 

3.利用pywin32库的win32com模块

安装pywin32库可以直接pip安装,注意安装之后要将安装位置Lib\site-packages\pywin32_system32里的文件copy到系统的System32文件夹中,因为pywin32需要调用Windows系统的win32api,不copy的话将无法调用,也就无法使用这个库

优点:1.可以完成对excel的任何操作,增删查改等等,可以直接删除行、列、sheet表

           2.对全系excel都支持

缺点:读取速度不够快,比xlrd要慢一些,但是比openpyxl还是要快很多

 

4.利用pandas库的read_excel()方法和to_excel()方法(很强大!)

read_excel():读出excel文件的数据,为一个dataframe格式的数据

to_excel():将dataframe格式的数据存储到excel中

优点:1.读取excel速度非常快

           2.读取出来的dataframe格式的数据操作起来非常方便,做数据处理很强大

缺点:1.read_excel()方法一次只能读出一个sheet的数据,而不能读取整个excel的所有sheet的数据

           2.to_excel()方法存入数据到一个sheet后,该excel文件的其他sheet会被删除,即只能操作单sheet的excel文件

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值