2011-07-29 5 views
5
for rownum in range(0, len(self.sheet.rows)): 
    for cell in self.sheet.rows[rownum]: 
     print cell.value 

シート内のすべてのセル値に、openpyxlで行単位でアクセスしたいとします。上記のコードは機能しますが遅すぎます。どのようにすべてのセル値に迅速にアクセスできますか?openpyxlを使用してセル値にすばやくアクセスする方法

答えて

4

これはちょっと怪しいですが、これはもっと速いと思います。

for row in sheet.rows: 
    for cell in row: 
     print cell.value 
16

あなたが唯一の左から右へ、上から下へとからの細胞を読んでいる場合は、「最適化されたリーダー」http://openpyxl.readthedocs.org/en/latest/optimized.htmlを使用することができます(私たちのほとんどのように)。それはかなり速く(CPUに縛られる)動作し、通常のリーダーよりも小さいメモリフットプリントを有する。

免責事項:私はopenpyxlの著者です。

+0

openpyxlでうまくいっ!私はそれを使用して行を削除する方法を見つけることを試みています。これはこれをサポートしていますか? –

関連する問題