我正在尝试将mkstemp与Python 3配合使用:
Python 3.2.3 (default, Jun 25 2012, 23:10:56)
[GCC 4.7.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from tempfile import mkstemp
>>> mkstemp()
(3, '/tmp/tmp080316')
根据documentation,元组的第一个元素应该是文件句柄。实际上,这是一个整数。如何获得适当的文件对象?
最佳答案
在mktemp
的文档中,您可以看到有关如何以所需方式使用NamedTemporaryFile
的示例:http://docs.python.org/dev/library/tempfile.html?highlight=mkstemp#tempfile.mktemp
>>> f = NamedTemporaryFile(delete=False)
>>> f
<open file '<fdopen>', mode 'w+b' at 0x384698>
这提供了与mkstemp相同的行为,但是返回了一个文件对象。
关于python - 如何从mkstemp()获取文件对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11926855/