C'è un tempfile
module per Python, ma una creazione di file semplice fa anche il trucco:
new_file = open("path/to/FILE_NAME.ext", "w")
Ora è possibile scrivere ad esso utilizzando il metodo write
:
new_file.write('this is some content')
Con il modulo tempfile
potrebbe essere il seguente:
import tempfile
new_file, filename = tempfile.mkstemp()
print(filename)
os.write(new_file, "this is some content")
os.close(new_file)
Con mkstemp
sei responsabile dell'eliminazione del file dopo aver finito con esso. Con altri argomenti, puoi influenzare la directory e il nome del file.
UPDATE
Come giustamente sottolineato da Emmet Speer, ci sono security considerations quando si utilizza mkstemp
, come il codice del client è responsabile per la chiusura/ripulire il file creato. Un modo migliore per gestire è il seguente frammento (presa dal link):
import os
fd, path = tempfile.mkstemp()
try:
with os.fdopen(fd, 'w') as tmp:
# do stuff with temp file
tmp.write('stuff')
finally:
os.remove(path)
Il os.fdopen
avvolge il descrittore di file in un oggetto file Python, che chiude automaticamente quando la with
uscite. La chiamata a os.remove
elimina il file quando non è più necessario.
Apri con 'w' e quindi chiuderlo, utilizzare 'os.touch (fname)'. – khachik
Perché hai bisogno del file temporaneo, quindi? – plaes
Ho una funzione che chiama il FILE_PATH dell'oggetto quindi deve essere lì – SuperString