Подтвердить что ты не робот

В чем разница между StringIO и io.StringIO в Python2.7?

Помимо очевидного (один тип, другой класс)? Что должно быть предпочтительным? Возможна ли какая-либо заметная разница в случаях использования?

4b9b3361

Ответ 1

http://docs.python.org/library/io.html#io.StringIO

http://docs.python.org/library/stringio.html

Я вижу это.

Поток в памяти для текста в Юникоде. Он наследует TextIOWrapper.

Этот модуль реализует файловый класс StringIO, который читает и записывает строковый буфер (также известный как файлы памяти).

io.StringIO - это класс. Он обрабатывает Unicode. Он отражает предпочтительную библиотечную структуру Python 3.

StringIO.StringIO - класс. Он обрабатывает строки. Он отражает устаревшую библиотечную структуру Python 2.

Что должно быть предпочтительным?

Всегда двигайтесь вперед к новой организации библиотеки. io.open следует использовать для замены встроенного Unicode-unaware open.

Вперед. Двигайтесь вперед.