用python操作excel的总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nsy1994/article/details/79307381

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文件

 

 

 

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭