Beispiele mit tempfile-Modul
Wir beginnen mit einfachen Beispielen mit dem Python tempfile Modul hier.
Temporäre Dateien erstellen
Das erste, was zum Speichern temporärer Daten benötigt wird, sind die Dateien, in denen wir diese Daten speichern können. Dies kann mit dem Temporäre Datei() Funktion. Der größte Vorteil dieser Funktion besteht darin, dass beim Erstellen einer Datei mit dieser Funktion keine Verknüpfungen zu dieser Datei im Dateisystem des Systems hergestellt werden und somit anderen Prozessen kein Zugriff auf diese Dateien möglich ist.
Schauen wir uns ein einfaches Programm an, das die Temporäre Datei() Funktion:
Importieren von OStempfile importieren
# PID im Dateinamen zur besseren Identifizierung verwenden
Datei = '/tmp/linuxhint_%s.txt' % os.getpid()
# Bereitstellung des Dateimodus
temp_file = open(file, 'w+b')
Versuchen:
print('temp_file: 0'.format(temp_file))
print('temp_file.Name: 0'.format(temp_file.Name))
schließlich:
temp_datei.schließen()
# Temporäre Datei selbst löschen
os.Datei löschen)
print('Metadaten der temporären Datei:')
temp_file = tempfile.Temporäre Datei()
Versuchen:
print('temp_file: 0'.format(temp_file))
print('temp_file.Name: 0'.format(temp_file.Name))
schließlich:
# Säubert die Datei, wenn close aufgerufen wird
temp_datei.schließen()
Folgendes erhalten wir mit diesem Befehl zurück:
Temporäre Datei erstellen
Diese Datei wird gelöscht, sobald die schließen() Funktion wird auf der aufgerufen tempfile Referenz.
Aus temporärer Datei lesen
Sogar das Lesen aus einer temporären Datei ist einfach und kann in einem einzigen Methodenaufruf im selben Modul durchgeführt werden. Der Vorteil dieser Funktion ist, dass es hilft uns, komplexe IO-Operationen zu vermeiden beteiligt, wenn wir diese Vorgänge manuell ausführen müssen. Hier ist ein Programm, das diese Funktion in Aktion zeigt:
Importieren von OStempfile importieren
tempFile = tempfile.Temporäre Datei()
Versuchen:
print('Daten in tempFile schreiben:')
tempDatei.write(b'Alle Daten können hierher kommen.')
tempDatei.suchen(0)
print('Daten aus tempFile lesen: \n\t0'.format(tempFile.lesen()))
schließlich:
tempDatei.schließen()
Sehen wir uns die Ausgabe für diesen Befehl an:
Python aus temporärer Datei lesen
Der gesamte Text in den temporären Dateien wurde mit einem einzigen Methodenaufruf zurückgegeben.
Schreiben von Klartext in temporäre Datei
In unseren oben genannten Programmen lagen nicht alle in Dateien geschriebenen Daten in Form eines einfachen Klartextformats vor. Wenn wir dies für einfache Textoperationen tun möchten, können wir einfach den Dateimodus ändern, wenn wir die temporäre Datei zum Ändern öffnen:
tempfile importierenfileMode = 'w+t'
mit tempfile.TemporaryFile(mode=fileMode) als Datei:
Datei.writelines(['Linux\n', 'Ubuntu\n'])
Datei.suchen(0)
für Artikel in Datei:
drucken (Artikel.rstrip())
Folgendes erhalten wir mit diesem Befehl zurück:
Einfachen Text in die Datei schreiben
Benannte temporäre Dateien erstellen
Die Dateien, die über mehrere Prozesse verteilt werden müssen, müssen benannt werden, damit ein Prozess sie nicht löscht, wenn er abgeschlossen ist. So können wir eine temporäre benannte Datei erstellen:
Importieren von OStempfile importieren
tempFile = tempfile.NamedTemporaryFile()
Versuchen:
print('tempDatei: 0'.format(tempDatei))
print('temp.tempDatei : 0'.format(tempFile.Name))
schließlich:
# Datei auch löschen
tempDatei.schließen()
print('Existiert schon? : 0'.format(os.Pfad.existiert(tempFile.Name)))
Sehen wir uns die Ausgabe für diesen Befehl an:
Benannte tempfile
Wenn wir die Datei nicht löschen, können wir ihre Existenz in einem anderen Programm überprüfen und sie verwenden, wenn sie am angegebenen Ort vorhanden ist exist.
Angeben von Dateinamensuffix und -präfix
Um die Dateien, die zu unseren eigenen Prozessen auf dem Dateisystem gehören, leicht zu identifizieren, können wir dem Dateinamen auch Suffix und Präfix hinzufügen:
tempfile importierentempFile = tempfile.NamedTemporaryFile(suffix='_ubuntu',
prefix='linuxhint_',
dir='/tmp',)
Versuchen:
print('tempDatei:', tempDatei)
print('tempFile.name:', tempFile.Name)
schließlich:
tempDatei.schließen()
Folgendes erhalten wir mit diesem Befehl zurück:
Anwenden von Präfix und Suffix auf den Dateinamen
Wir haben der Methode drei Parameter zur Verfügung gestellt, die als Suffix und Präfix für den Dateinamen dienen, der an dem von uns angegebenen Ort erstellt wird.
Fazit
In dieser Lektion haben wir uns angesehen, wie wir das Python-Tempfile-Modul verwenden können, um temporäre Dateien in unserem Code zu verwalten. Lesen Sie hier mehr Python-basierte Beiträge.