如何使用openpyxl更快地访问单元格值?

nde*_*mir 6 python excel xlsx openpyxl

for rownum in range(0, len(self.sheet.rows) ):
   for cell in self.sheet.rows[rownum]:
      print cell.value
Run Code Online (Sandbox Code Playgroud)

我想用openpyxl逐行访问工作表中的所有单元格值.上面的代码工作但速度太慢.如何更快地访问所有单元格值?

Eri*_*oni 17

如果您只是从上到下,从左到右阅读单元格(就像我们大多数人一样),您可以使用"优化阅读器" http://openpyxl.readthedocs.org/en/latest/optimized.html.它工作得非常快(CPU绑定),并且比普通读卡器具有更小的内存占用.

免责声明:我是openpyxl的作者.


Sna*_*fee 4

只是冒险猜测,我认为这可能会更快。

for row in sheet.rows:
    for cell in row:
        print cell.value
Run Code Online (Sandbox Code Playgroud)