official documentation for TemporaryFile brzmi:Python - tempfile.TemporaryFile nie można odczytać; czemu?
trybie ustawień domyślnych parametrów do „w + B” tak, że plik stworzony mogą być odczytywane i zapisywane bez zamknięte.
Jeszcze, poniżej kod nie działa zgodnie z oczekiwaniami:
import tempfile
def play_with_fd():
with tempfile.TemporaryFile() as f:
f.write('test data\n')
f.write('most test data\n')
print 'READ:', f.read()
f.write('further data')
print 'READ:', f.read()
f.write('even more')
print 'READ:', f.read()
print 'READ:', f.read()
print 'READ:', f.read()
if __name__ == '__main__':
play_with_fd()
Wyjście pojawia się:
> python play.py
READ:
READ:
READ:
READ:
READ:
Może ktoś wyjaśnić to zachowanie? Czy istnieje sposób na odczytanie z plików tymczasowych? (bez konieczności używania niskiego poziomu mkstemp, który nie powoduje automatycznego usuwania plików, i nie interesują mnie nazwane pliki)
Używanie 'flush' nie pomogło. –