Python NamedTemporaryFile aparece vacío incluso después de escribir los datos

En Python 2 fue fácil crear un archivo temporal y acceder a él. Sin embargo, en Python 3 parece que ya no es el caso. Estoy confundido sobre cómo puedo acceder al archivo que creo con tempfile.NamedTemporaryFile () para poder invocar un comando sobre él.

Por ejemplo:

temp = tempfile.NamedTemporaryFile()
temp.write(someData)
subprocess.call(['cat', temp.name]) # Doesn't print anything out as if file was empty (would work in python 2)
subprocess.call(['cat', "%s%s" % (tempfile.gettempdir(), temp.name])) # Doesn't print anything out as if file was empty
temp.close()

Respuestas a la pregunta(1)

Su respuesta a la pregunta