我正在尝试使用TemporaryFile。这是代码段。
from tempfile import TemporaryFile
outfile = TemporaryFile(dir='./')
np.save(outfile, np.arange(9))
outfile.close()
我打印出outfile.name,然后我得到62,但没有找到名称为62的东西。实际上在指定目录中什么都没有。
我的问题是,TemporaryFile在哪里保存文件,以及如何为TemporaryFile()方法指定目录。
答案 0 :(得分:0)
您可能希望使用NamedTemporaryFile
而不是TemporaryFile
。可以以在普通文件系统上不可见的方式创建TemporaryFile
,而保证NamedTemporaryFile
可见。
来自the NamedTemporaryFile
docs:
此函数的作用与
TemporaryFile()
完全相同,只是保证文件在文件系统中具有可见的名称(在Unix上,目录条目未取消链接)。可以从返回的类似文件的对象的name属性中检索该名称。
因此,只需用TemporaryFile
替换代码中所有对NamedTemporaryFile
的提及,然后一切都会按预期运行。请注意,NamedTemporaryFile
一旦close()
仍会从文件系统中删除。