我什么时候应该使用tempfile

时间:2012-09-27 18:06:59

标签: python

我对Python tempfile提出了一个简单的问题。

我什么时候应该使用tempfile?如果我使用tempfile.mkstemp创建临时文件,是否与普通文件相同?有什么区别?感谢。

3 个答案:

答案 0 :(得分:3)

documentation几乎说了一切。在我看来,当您需要创建文件但不关心其名称时,应使用tempfile。如果您愿意,可以在完成或保存后自动删除文件。它也可以被其他程序看到。

答案 1 :(得分:0)

本文对其用途有很好的解释。

http://pythoncentral.org/using-the-python-tempfile-module/

第一段提供了一个很好的总结

  

使用Python进行编程时,有时可能会有一些需要以某种形式使用或操作的数据。   一个文件但尚未写入一个文件。当然,第一个   想到的解决方案是打开一个新的或现有的文件,写   数据并最终保存(如果您不熟悉如何执行此操作)   看一下Python中的阅读和编写文件。   但是,一旦您的脚本出现,也可能就是这种情况   完成运行后,您不再需要或不想要文件了   因此,不要让它挂在你或他人的文件中   系统

答案 2 :(得分:0)

来自Learning Python

使用临时文件

  

如果您曾编写过shell脚本并需要使用中介   用于存储某些中间阶段结果的文件   处理,你可能会遇到目录垃圾。你开始了   用20个名为log_001.txt,log_002.txt等的文件,以及所有你   想要的是一个名为log_sum.txt的摘要文件。另外,你有一个   整堆log_001.tmp,log_001.tm2等文件,虽然它们   被标记为临时的,被困住了。至少那是我们所见过的   发生在我们自己的生活中。要将订单放回目录,请使用   特定目录中的临时文件,然后清理它们。

     

为了帮助解决这个临时文件管理问题,Python提供了一个   一个名为tempfile的小模块,它发布了两个函数:   mktemp()和TemporaryFile()。前者返回文件名   当前未在计算机上保留的目录中使用   临时文件(例如Unix上的/ tmp或Windows上的C:\ TMP)。该   后者直接返回一个新的文件对象。