Каковы различия между модулем tempfile и файловыми объектами IO - PullRequest
1 голос
/ 29 января 2020

Я обнаружил, что есть много общего между обоими модулями в области создания временных файлов с использованием io.BytesIO() или io.StringIo() и tempfile.TemporaryFile() Какова цель каждого из них?

1 Ответ

1 голос
/ 29 января 2020

io.BytesIO() создает файлоподобный объект, связанный с областью памяти , и должен использоваться для хранения двоичных данных (подобно данным, используемым для представления изображения, музыки c, документ MS Word и др. c.).

io.StringIO() создает файлоподобный объект, связанный с областью памяти , и должен использоваться для хранения текстовые данные (например, html страница, сценарий php и т. д. c).

tempfile.TemporaryFile() создать временный файл на диске (не в памяти). Используйте первый аргумент mode, чтобы указать или нет флаг b, чтобы определить, должен ли файл хранить двоичные данные или только текст.

...