Файловый буферный объект python
Я написал класс буфера, который предоставляет File-подобный интерфейс с read
, write
, seek
, tell
, flush
методами для простой строки в памяти. Конечно, он неполный (например, я не писал readline
). Его цель должна быть заполнена фоновым потоком из какого-то внешнего источника данных, но пусть пользователь относится к нему как к файлу. Я ожидаю, что он будет содержать относительно небольшой объем данных (может быть, максимум 50 КБ)
Есть ли лучший способ сделать это, вместо того чтобы писать его с нуля?
Ответы
Ответ 1
Вы можете использовать стандартные модули Python StringIO
или cStringIO
для получения буфера в памяти, который реализует файловый интерфейс.
cStringIO
реализован в C и будет быстрее, поэтому вы должны использовать эту версию, если это возможно.
Если вы используете Python 3, вы должны использовать io.StringIO
вместо StringIO
и io.BytesIO
вместо cStringIO
.
Ответ 2
Я думаю, что вы можете искать StringIO
.