tempfile.mkstemp() devuelve:Python: ¿cómo convierto "un manejador de nivel de sistema operativo a un archivo abierto" a un objeto de archivo?
una tupla que contiene un identificador de nivel de sistema operativo en un archivo abierto (como sería devuelto por os.open()) y el nombre de ruta absoluta de ese archivo, en ese orden.
¿Cómo convierto ese identificador de nivel de sistema operativo a un objeto de archivo?
Los documentation for os.open() estados:
para envolver un descriptor de archivo en un "archivo objeto", el uso fdopen().
así que he intentado:
>>> import tempfile
>>> tup = tempfile.mkstemp()
>>> import os
>>> f = os.fdopen(tup[0])
>>> f.write('foo\n')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
IOError: [Errno 9] Bad file descriptor
Recuerde marcar una respuesta como "Aceptada" si trabajado para ti –