【问题标题】:Xlrd, xlwt, and xlutils: how do they work togetherXlrd、xlwt 和 xlutils:它们如何协同工作
【发布时间】:2015-05-22 03:08:00
【问题描述】:

我正在尝试写入现有的 xls 文件,然后遍历同一文件的行,直到找到空白。

我知道如何通过代码做到这一点。

现在我的问题是,xlrd 是否“更新”它对工作表的引用?或者我是否必须在任何时候通过打开工作簿函数创建一个新的 xlrd 工作簿对象,然后通过 xlwt 的写入和保存函数保存到它(以读取新工作簿)?

【问题讨论】:

    标签: python xlrd xlwt xlutils


    【解决方案1】:

    xlrd 将在您调用open_workbook() 方法时将您的工作表文件加载到内存中。调用 open_workbook() 后对工作表文件所做的任何更改不会自动反映在内存中的对象中。

    如果您查看 Github 上的 xlrd 源代码,特别是 open_workbook() method of the book.py file,您会发现它在调用 open_workbook() 方法时会将工作表的内容加载到内存中。这意味着,如果您调用open_workbook(),然后更改原始文件,内存中的工作簿将不会反映这些更改。

    这也是为什么,当你使用 xlwt 模块时,你必须使用write() 方法——当你修改内存中工作表的内容时,所做的更改不会反映在原始文件中,直到你调用write().

    【讨论】:

    • 优秀。正是我想要的。我很确定;不知道源代码可以在 github 上免费获得。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 2011-04-30
    相关资源
    最近更新 更多