次の一時ファイルの名前を変更する方法は何ですか
pdf = render_me_some_pdf() #PDF RENDER
f = tempfile.NamedTemporaryFile()
f.write(pdf)
f.flush()
私はos.renameについて何かを読みましたが、それを適用する方法は本当にわかりません
次の一時ファイルの名前を変更する方法は何ですか
pdf = render_me_some_pdf() #PDF RENDER
f = tempfile.NamedTemporaryFile()
f.write(pdf)
f.flush()
私はos.renameについて何かを読みましたが、それを適用する方法は本当にわかりません
最善の方法は、ファイルをコピーし、閉じたときに一時的なファイルを Python に削除させることです。
私は実際にあなたが使用した方が良いと思いますos.link
:
with tempfile.NamedTemporaryFile(dir=os.path.dirname(actual_name)) as f:
f.write(pdf)
os.link(f.name, actual_name)
これはos.link
一時ファイルへのハード リンクを作成するために使用され、一時ファイルが自動的に削除された後も保持されます。
このコードにはいくつかの利点があります。
tempfile
ため、明示的に閉じることを心配する必要はありません。f.flush()
。ファイルが閉じられると、ファイルは自動的にフラッシュされます。