我需要使用python编辑Excel工作簿。有没有办法在不阅读工作簿,编辑我想要的内容并将其写回来的情况下执行此操作?也就是说我可以动态地执行此操作,因为我只需要在每张纸上编辑几个值?
我查看了pyexcelerator
,xlrd
和xlwt
,但他们似乎只支持(据我可以解决)阅读和写作而不是编辑。我不能使用pywin32
,因为我正在使用linux。
对图书馆的任何建议或特定的做事方式?
答案 0 :(得分:9)
首先,什么版本的Excel? Excel2007 +使用XML文件格式,而Excel2003-使用专有的二进制格式...因此,以完全不同的方式读取和写入这些工具的工具。
如果您正在浏览更新的xlsx文件,请查看Eric'Gazoni的openpyxl项目。代码可以在bitbucket找到。这背后的驱动力是能够在单个库中从Python读取和写入xlsx文件。
即使这样,它也会读取整个工作簿,但允许您在写入之前修改单元格。
简单地说:Excel文件的结构不适合简单编辑....这不仅仅是改变一些字符的情况。
答案 1 :(得分:2)
xlutils有一个可能会为您提供的复制模块
答案 2 :(得分:0)
我在linux上使用pyexcelerator来编辑和构建xls文件