Dateiverwaltung in Python ist ein leistungsstarkes und vielseitiges Werkzeug, mit dem sich eine Vielzahl von Operationen durchführen lassen. Beim Schreiben von Python-Programmen ist es jedoch wichtig, die Vor- und Nachteile der Dateiverwaltung sorgfältig abzuwägen, um sicherzustellen, dass der Code sicher und zuverlässig ist und eine gute Leistung erbringt.
In diesem Artikel werden wir es untersuchen Umgang mit Python-Dateien, Vorteile, Nachteile und Funktionsweise der Funktionen zum Öffnen, Schreiben und Anhängen in Python-Dateien.
Umgang mit Python-Dateien
Python unterstützt die Dateiverwaltung und ermöglicht Benutzern die Verwaltung von Dateien, d. h. das Lesen und Schreiben von Dateien sowie viele andere Dateiverwaltungsoptionen, um Dateien zu bearbeiten. Das Konzept der Dateiverwaltung erstreckt sich über verschiedene andere Sprachen, aber die Implementierung ist entweder kompliziert oder langwierig, wie bei anderen Konzepten von Python, auch dieses Konzept ist hier einfach und kurz. Python behandelt Dateien unterschiedlich als Text oder Binärdateien, und das ist wichtig. Jede Codezeile enthält eine Folge von Zeichen, die eine Textdatei bilden. Jede Zeile einer Datei wird mit einem Sonderzeichen, dem sogenannten „, abgeschlossen EOL oder Ende der Linie Charaktere mögen Komma {,} oder Newline-Zeichen. Es beendet die aktuelle Zeile und teilt dem Interpreter mit, dass eine neue begonnen hat. Beginnen wir mit dem Lesen und Schreiben von Dateien.
Vorteile der Dateiverwaltung in Python
- Vielseitigkeit : Mit der Dateiverwaltung in Python können Sie eine Vielzahl von Vorgängen ausführen, z. B. Dateien erstellen, lesen, schreiben, anhängen, umbenennen und löschen.
- Flexibilität : Die Dateiverwaltung in Python ist äußerst flexibel, da Sie mit verschiedenen Dateitypen arbeiten können (z. B. Textdateien, Binärdateien, CSV-Dateien usw.) und um verschiedene Vorgänge an Dateien auszuführen (z. B. Lesen, Schreiben, Anhängen usw.).
- Benutzer – freundlich : Python bietet eine benutzerfreundliche Oberfläche für die Dateiverwaltung, die das Erstellen, Lesen und Bearbeiten von Dateien erleichtert.
- Plattformübergreifend : Python-Dateiverwaltungsfunktionen funktionieren auf verschiedenen Plattformen (z. B. Windows, Mac, Linux) und ermöglichen eine nahtlose Integration und Kompatibilität.
Nachteile der Dateiverwaltung in Python
- Fehleranfällig: Dateiverarbeitungsvorgänge in Python können fehleranfällig sein, insbesondere wenn der Code nicht sorgfältig geschrieben ist oder Probleme mit dem Dateisystem vorliegen (z. B. Dateiberechtigungen, Dateisperren usw.).
- Sicherheits Risikos : Auch die Dateiverarbeitung in Python kann ein Sicherheitsrisiko darstellen, insbesondere wenn das Programm Benutzereingaben akzeptiert, die zum Zugriff auf oder zum Ändern vertraulicher Dateien auf dem System verwendet werden können.
- Komplexität : Die Dateiverwaltung in Python kann komplex sein, insbesondere wenn mit komplexeren Dateiformaten oder Vorgängen gearbeitet wird. Dem Code muss besondere Aufmerksamkeit gewidmet werden, um sicherzustellen, dass Dateien ordnungsgemäß und sicher behandelt werden.
- Leistung : Dateiverarbeitungsvorgänge in Python können langsamer sein als in anderen Programmiersprachen, insbesondere wenn große Dateien verarbeitet oder komplexe Vorgänge ausgeführt werden.
Für diesen Artikel werden wir Folgendes berücksichtigen geeks.txt Datei als Beispiel.
Hello world techcodeview.com 123 456>
Python-Datei öffnen
Bevor wir einen Vorgang an der Datei ausführen, z. B. Lesen oder Schreiben, müssen wir diese Datei zunächst öffnen. Hierzu sollten wir die in Python integrierte Funktion verwenden offen() Zum Zeitpunkt des Öffnens müssen wir jedoch den Modus angeben, der den Zweck der zu öffnenden Datei darstellt.
f = open(filename, mode)>
Wobei der folgende Modus unterstützt wird:
- R: Öffnen Sie eine vorhandene Datei für einen Lesevorgang.
- In: Öffnen Sie eine vorhandene Datei für einen Schreibvorgang. Wenn die Datei bereits einige Daten enthält, werden sie überschrieben. Wenn die Datei jedoch nicht vorhanden ist, wird die Datei ebenfalls erstellt.
- A: Öffnen Sie eine vorhandene Datei für den Anhängevorgang. Vorhandene Daten werden nicht überschrieben.
- r+: Zum Lesen und Schreiben von Daten in die Datei. Die vorherigen Daten in der Datei werden überschrieben.
- w+: Zum Schreiben und Lesen von Daten. Dabei werden vorhandene Daten überschrieben.
- a+: Zum Anhängen und Lesen von Daten aus der Datei. Vorhandene Daten werden nicht überschrieben.
Arbeiten im Lesemodus
Es gibt mehr als einen Weg dazu So lesen Sie aus einer Datei in Python . Sehen wir uns an, wie wir den Inhalt einer Datei im Lesemodus lesen können.
xor cpp
Beispiel 1: Der Befehl open öffnet die Python-Datei im Lesemodus und die for-Schleife druckt jede in der Datei vorhandene Zeile.
Python3
# a file named 'geek', will be opened with the reading mode.> file> => open>(>'geek.txt'>,>'r'>)> # This will print every line one by one in the file> for> each>in> file>:> >print> (each)> |
>
>
Ausgabe:
Hello world techcodeview.com 123 456>
Beispiel 2: In diesem Beispiel extrahieren wir eine Zeichenfolge, die alle Zeichen in der Python-Datei enthält, die wir dann verwenden können file.read() .
Python3
# Python code to illustrate read() mode> file> => open>(>'geeks.txt'>,>'r'>)> print> (>file>.read())> |
>
>
Ausgabe:
Hello world techcodeview.com 123 456>
Beispiel 3: In diesem Beispiel werden wir sehen, wie wir eine Datei mit lesen können mit Stellungnahme in Python.
Python3
# Python code to illustrate with()> with>open>(>'geeks.txt'>) as>file>:> >data>=> file>.read()> print>(data)> |
>
>
Ausgabe:
Hello world techcodeview.com 123 456>
Beispiel 4: Eine andere Möglichkeit, eine Datei zu lesen, besteht darin, eine bestimmte Anzahl von Zeichen aufzurufen, wie im folgenden Code. Der Interpreter liest die ersten fünf Zeichen der gespeicherten Daten und gibt sie als Zeichenfolge zurück:
Python3
# Python code to illustrate read() mode character wise> file> => open>(>'geeks.txt'>,>'r'>)> print> (>file>.read(>5>))> |
>
>
Ausgabe:
Hello>
Beispiel 5: Wir können beim Lesen von Dateien in Python auch Zeilen teilen. Die Funktion split() teilt die Variable, wenn Leerzeichen auftritt. Sie können die Aufteilung auch beliebig mit beliebigen Zeichen durchführen.
Python3
# Python code to illustrate split() function> with>open>(>'geeks.txt'>,>'r'>) as>file>:> >data>=> file>.readlines()> >for> line>in> data:> >word>=> line.split()> >print> (word)> |
>
>
Ausgabe:
['Hello', 'world'] ['techcodeview.com'] ['123', '456']>
Erstellen einer Datei mit der Funktion write()
Genau wie beim Lesen einer Datei in Python gibt es dazu mehrere Möglichkeiten In Python in eine Datei schreiben . Sehen wir uns an, wie wir den Inhalt einer Datei mit der Funktion write() in Python schreiben können.
Arbeiten im Schreibmodus
Sehen wir uns an, wie man eine Datei erstellt und wie der Schreibmodus funktioniert.
Beispiel 1: In diesem Beispiel sehen wir, wie der Schreibmodus und die Funktion write() zum Schreiben in eine Datei verwendet werden. Der Befehl close() beendet alle verwendeten Ressourcen und gibt das System von diesem bestimmten Programm frei.
Python3
xor in c++
# Python code to create a file> file> => open>(>'geek.txt'>,>'w'>)> file>.write(>'This is the write command'>)> file>.write(>'It allows us to write in a particular file'>)> file>.close()> |
>
>
Ausgabe:
This is the write commandIt allows us to write in a particular file>
Beispiel 2: Wir können die schriftliche Anweisung auch zusammen mit der Funktion with() verwenden.
Python3
# Python code to illustrate with() alongwith write()> with>open>(>'file.txt'>,>'w'>) as f:> >f.write(>'Hello World!!!'>)> |
>
>
Ausgabe:
Hello World!!!>
Funktionsweise des Append-Modus
Sehen wir uns an, wie der Anhängemodus funktioniert.
Beispiel: Für dieses Beispiel verwenden wir die im vorherigen Beispiel erstellte Python-Datei.
Python3
# Python code to illustrate append() mode> file> => open>(>'geek.txt'>,>'a'>)> file>.write(>'This will add this line'>)> file>.close()> |
>
>
Ausgabe:
This is the write commandIt allows us to write in a particular fileThis will add this line>
Es gibt auch verschiedene andere Befehle in der Python-Dateiverwaltung, die zur Abwicklung verschiedener Aufgaben verwendet werden:
rstrip(): This function strips each line of a file off spaces from the right-hand side. lstrip(): This function strips each line of a file off spaces from the left-hand side.>
Es wurde entwickelt, um eine wesentlich sauberere Syntax und Ausnahmebehandlung bei der Arbeit mit Code zu ermöglichen. Das erklärt, warum es sinnvoll ist, sie gegebenenfalls mit einer Erklärung zu verwenden. Dies ist hilfreich, da bei dieser Methode alle geöffneten Dateien automatisch geschlossen werden, nachdem sie abgeschlossen sind, sodass eine automatische Bereinigung erfolgt.
Implementierung aller Funktionen im Dateihandling
In diesem Beispiel werden wir alle Konzepte behandeln, die wir oben gesehen haben. Darüber hinaus werden wir auch sehen, wie wir eine Datei mit der Funktion „remove()“ von Python löschen können OS-Modul .
Python3
import> os> def> create_file(filename):> >try>:> >with>open>(filename,>'w'>) as f:> >f.write(>'Hello, world!
'>)> >print>(>'File '> +> filename>+> ' created successfully.'>)> >except> IOError:> >print>(>'Error: could not create file '> +> filename)> def> read_file(filename):> >try>:> >with>open>(filename,>'r'>) as f:> >contents>=> f.read()> >print>(contents)> >except> IOError:> >print>(>'Error: could not read file '> +> filename)> def> append_file(filename, text):> >try>:> >with>open>(filename,>'a'>) as f:> >f.write(text)> >print>(>'Text appended to file '> +> filename>+> ' successfully.'>)> >except> IOError:> >print>(>'Error: could not append to file '> +> filename)> def> rename_file(filename, new_filename):> >try>:> >os.rename(filename, new_filename)> >print>(>'File '> +> filename>+> ' renamed to '> +> new_filename>+> ' successfully.'>)> >except> IOError:> >print>(>'Error: could not rename file '> +> filename)> def> delete_file(filename):> >try>:> >os.remove(filename)> >print>(>'File '> +> filename>+> ' deleted successfully.'>)> >except> IOError:> >print>(>'Error: could not delete file '> +> filename)> if> __name__>=>=> '__main__'>:> >filename>=> 'example.txt'> >new_filename>=> 'new_example.txt'> >create_file(filename)> >read_file(filename)> >append_file(filename,>'This is some additional text.
'>)> >read_file(filename)> >rename_file(filename, new_filename)> >read_file(new_filename)> >delete_file(new_filename)> |
>
>
Ausgabe:
File example.txt created successfully. Hello, world! Text appended to file example.txt successfully. Hello, world! This is some additional text. File example.txt renamed to new_example.txt successfully. Hello, world! This is some additional text. File new_example.txt deleted successfully.>