Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist Pythontemp?

Was ist Pythontemp?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-06-21 16:47:2414116Durchsuche

Das Tempfile-Modul wird speziell zum Erstellen temporärer Dateien und temporärer Verzeichnisse verwendet. Es funktioniert gut auf UNIX- und Windows-Plattformen.
Das Tempfile-Modul bietet viele häufig verwendete Funktionen. Lassen Sie mich diese Funktionen im Folgenden ausführlich vorstellen.

Was ist Pythontemp?

tempfile.TemporaryFile(mode='w+b', buffering=None, binding=None, newline=None, suffix=None, prefix=None, dir=None ): Erstellen Sie eine temporäre Datei. Diese Funktion gibt ein dateiähnliches Objekt zurück, das heißt, sie unterstützt Datei-E/A.

tempfile.NamedTemporaryFile(mode='w+b', buffering=None, binding=None, newline=None, suffix=None, prefix=None, dir=None, delete=True): Erstellen Sie eine temporäre Datei Datei . Diese Funktion macht im Großen und Ganzen das Gleiche wie die vorherige Funktion, mit der Ausnahme, dass die von ihr generierte temporäre Datei einen Dateinamen im Dateisystem hat.

Verwandte Empfehlungen: „Python-Video-Tutorial

tempfile.SpooledTemporaryFile(max_size=0, mode='w+b', buffering=None, binding=None, newline=None, suffix=None, prefix=None, dir=None): Temporäre Dateien erstellen. Wenn das Programm im Vergleich zur Funktion „TemporaryFile“ Daten in die temporäre Datei ausgibt, werden diese zuerst in den Speicher ausgegeben und erst dann tatsächlich auf die physische Festplatte ausgegeben, wenn max_size überschritten wird.

tempfile.TemporaryDirectory(suffix=None, prefix=None, dir=None): Erzeugt ein temporäres Verzeichnis.

tempfile.gettempdir(): Ruft das temporäre Verzeichnis des Systems ab.

tempfile.gettempdirb(): Identisch mit gettempdir(), außer dass diese Funktion eine Byte-Zeichenfolge zurückgibt.

tempfile.gettempprefix(): Gibt das Präfix zurück, das zum Generieren temporärer Dateien verwendet wird.

tempfile.gettempprefixb(): Gleich wie gettempprefix(), außer dass diese Funktion eine Byte-Zeichenfolge zurückgibt.

Das Tempfile-Modul bietet außerdem zwei Low-Level-Funktionen, tempfile.mkstemp() und tempfile.mkdtemp(). Die oben vorgestellten vier Funktionen zum Erstellen temporärer Dateien und temporärer Verzeichnisse sind alle High-Level-Funktionen. Die High-Level-Funktionen unterstützen die automatische Bereinigung und können mit der with-Anweisung verwendet werden, während dies bei diesen beiden Low-Level-Funktionen nicht der Fall ist Im Allgemeinen wird empfohlen, Funktionen auf hoher Ebene zum Erstellen temporärer Dateien und temporärer Verzeichnisse zu verwenden.

Darüber hinaus stellt das Tempfile-Modul auch das Attribut tempfile.tempdir bereit, und das temporäre Verzeichnis des Systems kann geändert werden, indem diesem Attribut ein Wert zugewiesen wird.

Das folgende Programm zeigt, wie temporäre Dateien und temporäre Verzeichnisse verwendet werden:

import tempfile
# 创建临时文件
fp = tempfile.TemporaryFile()
print(fp.name)
fp.write('两情若是久长时,'.encode('utf-8'))
fp.write('又岂在朝朝暮暮。'.encode('utf-8'))
# 将文件指针移到开始处,准备读取文件
fp.seek(0)
print(fp.read().decode('utf-8')) # 输出刚才写入的内容
# 关闭文件,该文件将会被自动删除
fp.close()
# 通过with语句创建临时文件,with会自动关闭临时文件
with tempfile.TemporaryFile() as fp:
    # 写入内容
    fp.write(b'I Love Python!')
    # 将文件指针移到开始处,准备读取文件
    fp.seek(0)
    # 读取文件内容
    print(fp.read()) # b'I Love Python!'
# 通过with语句创建临时目录
with tempfile.TemporaryDirectory() as tmpdirname:
    print('创建临时目录', tmpdirname)

Das obige Programm erstellt temporäre Dateien auf zwei Arten:

Erstens Die erste Möglichkeit besteht darin, manuell eine temporäre Datei zu erstellen. Nachdem Sie die temporäre Datei gelesen und geschrieben haben, müssen Sie sie aktiv schließen. Wenn das Programm die temporäre Datei schließt, wird die Datei automatisch gelöscht.

Die zweite Möglichkeit besteht darin, mit der with-Anweisung eine temporäre Datei zu erstellen, sodass die with-Anweisung die temporäre Datei automatisch schließt.

Das obige Programm erstellt am Ende auch ein temporäres Verzeichnis. Da das Programm die with-Anweisung zum Verwalten des temporären Verzeichnisses verwendet, löscht das Programm auch automatisch das temporäre Verzeichnis.

Führen Sie das obige Programm aus und Sie können die folgende Ausgabe sehen:

C:\Users\admin\AppData\Local\Temp\tmphvehw9z1
两情若是久长时,又岂在朝朝暮暮。
b'I Love Python!'
创建临时目录C:\Users\admin\AppData\Local\Temp\tmp3sjbnwob

Die erste Ausgabezeile oben ist der Dateiname der vom Programm generierten temporären Datei und die letzte Die Ausgabezeile ist der Name der vom Programm generierten temporären Datei. Der Verzeichnisname des temporären Verzeichnisses. Es ist zu beachten, dass Sie nicht nach temporären Dateien oder temporären Ordnern suchen, da die temporären Dateien und temporären Ordner beim Beenden des Programms gelöscht werden.

Das obige ist der detaillierte Inhalt vonWas ist Pythontemp?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn