6 Stimmen

Wie man Zellwerte schneller mit openpyxl abruft?

for rownum in range(0, len(self.sheet.rows) ):
   for cell in self.sheet.rows[rownum]:
      print cell.value

Ich möchte alle Zellenwerte in einer Tabelle zeilenweise mit openpyxl abrufen. Der obige Code funktioniert, aber er ist zu langsam. Wie kann ich alle Zellenwerte schneller abrufen?

17voto

Eric Gazoni Punkte 826

Wenn Sie Zellen nur von oben nach unten und von links nach rechts lesen (wie die meisten von uns), können Sie den "optimierten Leser" http://openpyxl.readthedocs.org/en/latest/optimized.html verwenden. Es funktioniert ziemlich schnell (CPU-gebunden) und hat einen kleineren Speicherbedarf als der normale Leser.

Haftungsausschluss: Ich bin der Autor von openpyxl.

4voto

Snakes and Coffee Punkte 8505

Nur eine Vermutung, aber ich denke, das könnte schneller sein.

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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X