So arbeiten Sie mit Excel-Dokumenten unter Verwendung von Python

Ich glaube, Sie haben gelegentlich Microsoft Excel verwendet. Es ist sehr leistungsfähig, wenn Sie mit Tabellenkalkulationen, Tabellen, Diagrammen usw. arbeiten. Aber was hat Python damit zu tun?? 

Python ist ein entscheidender Faktor, wenn es um Excel-Dateien geht, denn es kann schwierige Dinge automatisieren, die bei Excel-Aufgaben auftreten können. Beispielsweise müssen Sie möglicherweise in Hunderten von Tabellenkalkulationen nach Informationen nach den Budgets des Unternehmens suchen. Sehr entmutigend, nicht wahr? In diesem Lernprogramm werde ich Ihnen zeigen, wie Python problemlos für die Arbeit mit Excel-Dokumenten verwendet werden kann.

Machen Sie sich keine Sorgen, wenn Sie Microsoft Excel nicht auf Ihrem Computer installiert haben. Sie können andere Alternativen verwenden, um dieses Lernprogramm durchzugehen, beispielsweise LibreOffice Calc und OpenOffice Calc.

Also lasst uns anfangen!

OpenPyXL

OpenPyXL ist eine Bibliothek zum Lesen und Schreiben von Excel 2010 xlsx / xlsm / xltx / xltm Dateien. Dies ist die Bibliothek, die wir in diesem Lernprogramm verwenden werden, um mit Excel-Dokumenten zu arbeiten.

Das erste, was wir tun müssen, um diese Bibliothek nutzen zu können, ist die Installation OpenPyXL.

OpenPyXL installieren

Um zu installieren OpenPyXL, wir werden pip verwenden, was (basierend auf Wikipedia):

Ein Paketverwaltungssystem zum Installieren und Verwalten von in Python geschriebenen Softwarepaketen. Viele Pakete sind im Python Package Index (PyPI) zu finden..

Für die Installation können Sie die im Python Packaging User Guide genannten Schritte ausführen Pip, aber wenn du hast Python 2.7.9 und höher oder Python 3.4 und höher hast du schon Pip!

OpenPyXL Jetzt kann einfach installiert werden, indem Sie den folgenden Befehl eingeben (im Mac OS X-Terminal):

pip install openpyxl

Ein Excel-Dokument öffnen

Nach der Installation OpenPyXL, Wir sind bereit, mit Excel-Dokumenten zu arbeiten. Die erste normale Aufgabe, die wir für ein Excel-Dokument ausführen würden, ist die öffnen dieses Dokument. Laden Sie die Excel-Datei sample.xlsx herunter, um das Lernprogramm mitzuverfolgen, oder verwenden Sie eine beliebige Excel-Datei, die Sie möchten. 

Bevor wir verwenden können OpenPyXL, wir müssen einführen es wie folgt:

importiere openpyxl

Die Methode, die wir zum Öffnen des Excel-Dokuments benötigen, ist load_workbook (). Wenn Sie sich fragen, was unter einer Arbeitsmappe zu verstehen ist, handelt es sich einfach um das Excel-Arbeitsblatt. Das Skript, das wir zum Öffnen eines Excel-Dokuments benötigen, lautet wie folgt:

openpyxl importieren excel_document = openpyxl.load_workbook ('sample.xlsx')

Lass uns jetzt das sehen Art aus dem zurückgekehrt load_workbook () Methode. Dies kann wie folgt durchgeführt werden:

Drucktyp (excel_document)

Dies wird Folgendes zurückgeben:

 

Wie wir sehen können, ist das zurückgegebene Objekt Arbeitsmappe, vom Datentyp Arbeitsmappe. Das Arbeitsmappe Objekt hier repräsentiert die Excel-Datei.

Blattnamen

Tabellen in Excel bestehen aus Spalten (mit Buchstaben, die mit A, B, C usw. beginnen) und Zeilen (beginnend mit 1, 2, 3 usw.). Um zu prüfen, welche Blätter wir in unserem Excel-Dokument haben, verwenden wir die get_sheet_names () Methode wie folgt:

excel_document.get_sheet_names ()

Wenn wir drucken Mit dem obigen Befehl erhalten wir Folgendes:

[u'Sheet1 ']

So zeigen wir, dass wir ein Blatt haben, genannt Blatt1.

Wenn Sie über mehrere Arbeitsblätter verfügen, können Sie mit dieser Methode auf ein bestimmtes Arbeitsblatt anhand seines Namens zugreifen: get_sheet_by_name ().

Zugriff auf Zellen

Nachdem wir nun gelernt haben, wie Sie eine Excel-Datei öffnen und das Blatt erhalten, sehen wir uns an, wie einfach der Zugriff auf eine Zelle in diesem Blatt ist. Alles, was Sie tun müssen, ist das Blatt abzurufen und dann die Position (Koordinate) der Zelle zu bestimmen. Nehmen wir an, wir möchten auf die Spalte zugreifen EIN Reihe 2 im Excel-Dokument haben wir also A2. Dies kann wie folgt implementiert werden:

sheet = excel_document.get_sheet_by_name ('Sheet1') Druckbogen ['A2']. value

In diesem Fall erhalten Sie den folgenden Wert zurück: Abder.

Wir können auch eine Zeilen-Spalten-Notation verwenden. Zum Beispiel, wenn wir auf die Zelle in der Zeile zugreifen möchten 5 und Spalte 2, Wir geben folgendes ein:

Blattzelle (Zeile = 5, Spalte = 2) .Wert

Die Ausgabe in diesem Fall lautet: Programmierer.

Wenn wir den Objekttyp sehen möchten, der die Zelle darstellt, können wir Folgendes eingeben:

Druckart (Blatt ['A2'])

oder:

Druckbogenzelle (Zeile = 5, Spalte = 2)

In diesem Fall erhalten Sie folgende Ausgabe:


was bedeutet, dass das Objekt vom Typ ist Zelle.

Zugriff auf eine Reihe von Zellen

Was wäre, wenn Sie an einer Reihe von Zellen und nicht nur an einer Zelle interessiert wären? Nehmen wir an, wir möchten auf die Zellen zugreifen A1 zu B3, welche in unserem Excel-Dokument so aussehen?

Dies kann mit folgendem Skript erfolgen:

multiple_cells = Tabelle ['A1': 'B3'] für Zeile in Multiple_Cells: für Zelle in Zeile: print cell.value

In diesem Fall erhalten Sie folgende Ausgabe:

Name Beruf Abder Student Bob Engineer

Zugriff auf alle Zeilen und Spalten

OpenPyXL ermöglicht Ihnen den Zugriff auf alle Zeilen und Spalten in Ihrem Excel-Dokument mithilfe von Reihen() und Säulen() jeweils Methoden.

Um auf alle Zeilen zuzugreifen, können wir Folgendes tun:

all_rows = sheet.rows print all_rows [:]

Beachten Sie, dass wir die verwendet haben [:] Notation, um auf alle zuzugreifen Reihen. Dies liegt daran, dass der zurückgegebene Objekttyp von ganzes Dokument ist ein Tupel.

Die Ausgabe des obigen Skripts lautet wie folgt:

((, ), (, ), (, ), (, ), (, ), (, ), (, ))

Auf der anderen Seite, wenn wir auf alle zugreifen wollen Säulen, wir machen einfach folgendes:

all_columns = sheet.columns print alle_columns [:]

In diesem Fall erhalten Sie folgende Ausgabe:

((, , , , , , ), (, , , , , , ))

Mit Excel-Dokumenten können Sie natürlich mehr erreichen, wie Sie in der OpenPyXL-Dokumentation sehen können. 

Fazit

In diesem Lernprogramm haben wir festgestellt, wie flexibel es ist, mit Excel-Dokumenten mithilfe von Python zu arbeiten. Erinnern Sie sich an das Szenario, das zu Beginn des Tutorials erwähnt wurde? Einen Versuch wert, als Projekt!

Lerne Python

Lernen Sie Python mit unserem kompletten Python-Tutorial, egal ob Sie gerade erst anfangen oder ein erfahrener Programmierer sind, der neue Fähigkeiten erlernen möchte.