用python进行excel操作的总结

版权声明:本文为博主原创文章,转载请注明出处:http://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文件的修改
缺点:1.只支持2003版的excel,即后缀名为xls的文件
    2.不能删除excel的行和列,以及sheet表
优点:1.读取excel文件的速度很快,只是修改时copy文件要花上一些时间

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

阅读更多
文章标签: python excel 数据
想对作者说点什么? 我来说一句

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

关闭
关闭
关闭