Die Frage mit der Nummer 10501247 im Stackoverflow gibt eine Antwort zum Erstellen einer temporären Datei in Python.
In meinem Fall muss ich nur einen temporären Dateinamen haben.
Wenn Sie tempfile.NamedTemporaryFile () aufrufen, wird das Dateihandle nach der eigentlichen Dateierstellung zurückgegeben.
Gibt es eine Möglichkeit, nur den Dateinamen abzurufen?
# Trying to get temp file path
tf = tempfile.NamedTemporaryFile()
temp_file_name = tf.name
tf.close()
# Here is my real purpose to get the temp_file_name
f = gzip.open(temp_file_name ,'wb')
...
NamedTemporaryFile
garantiert einen eindeutigen Namen (wahrscheinlich), indem er versucht und erneut versucht wird, falls vorhanden. Wenn Sie nur einen Namen erhalten, können Sie nicht garantieren, dass Sie die Datei später tatsächlich erstellen können. Sie öffnen sich der Race-Bedingung einer anderen Person, die denselben Namen vor Ihnen verwendet.