Почему MutableString устарела в Python?

Почему класс MutableString устарел в Python 2.6;
и почему он был удален в Python 3?

2 Solutions collect form web for “Почему MutableString устарела в Python?”

Класс MutableString должен был быть учебным и не использоваться в реальных программах. Если вы посмотрите на реализацию, вы увидите, что вы не можете использовать ее в серьезном приложении, требующем изменчивых строк.

Если вам нужны измененные байты, вы можете использовать использование bytearray , доступное в Python 2.6 и 3.x. Реализация не создает новые строки каждый раз, когда вы меняете старый, поэтому он намного быстрее и удобнее. Он также поддерживает буферный протокол должным образом, чтобы его можно было использовать вместо нормального байта практически везде.

Если вы не собираетесь делать много модификаций одной строки по индексу, изменение нормальной строки путем создания нового должно подойти вам (например, через str.replace , re.sub и re.sub ).

Нет никаких изменяемых строк юникода, потому что это считается необычным приложением, но вы всегда можете реализовать __unicode__ (или __str__ для Python 3) и encode методы в своем пользовательском типе последовательности, чтобы эмулировать его.

Я предполагаю, что строки не должны быть изменчивыми. В конце концов, основная цель была «образовательная». Если вам нужно изменить строки, используйте список строк или StringIO .

  • Преобразование строки в кортеж
  • Что такое чистый способ преобразования процентной ставки строки в float?
  • Почему str.translate быстрее в Python 3.5 по сравнению с Python 3.4?
  • Быстрый массив строк - Cython
  • Python для MATLAB: экспорт списка строк с использованием scipy.io
  • Преобразование байтовой строки в строку юникода
  • Получить последний столбец после операции .str.split () в столбце в pandas DataFrame
  • Элементарная конкатенация строк в numpy
  • Python - лучший язык программирования в мире.