3.7 UserString -- Cobertura de clase de objetos cadena

Este módulo define una clase que actúa como cobertura de los objetos cadena. Es una clase base útil para generar clases derivadas de la cadena, que heredan su comportamiento y redefinen métodos o añaden métodos nuevos. De este modo uno puede crear nuevo comportamiento para las cadenas.

Hay que destacar que estas clases son muy ineficaces comparadas con los objetos cadena o Unicode reales, especialmente en el caso de MutableString.

El módulo UserString define las siguientes clases:

UserString ([sequence])
Clase que emula una cadena normal o Unicode. El contenido de la instancia se guarda en una cadena normal o Unicode, accesible mediante el atributo data de las instancias de UserString. El contenido inicial de la instancia es una copia de sequence. sequence puede ser una cadena Python normal o Unicode, una instancia de UserString (o de una de sus subclases) o una secuancia arbitraria que pueda convertirse en cadena mediante la función interna str().

MutableString ([sequence])
Esta clase está derivada de la UserString anteriormente presentada y redefine las cadenas como mutables. Las cadenas mutables no se pueden usar como claves de un diccionario, porque los diccionarios requieren objetos inmutables como claves. La intención principal de esta clase es la de servir como ejemplo de herencia y la necesidad de eliminar (redefinir) el método __hash__() para capturar cualquier intento de utilizar el objeto mutable como clave de diccionario, lo que sería propenso a errores y difícil de trazar resuelto de cualquier otro modo.

Además de soportar los métodos y operaciones de las cadenas y de los objetos Unicode (ver la sección , ``Métodos de las cadenas''), las instancias de UserString proporcionan el siguiente atributo:

data
Una cadena Python u objeto Unicode utilizado para almacenar el contenido de la clase UserString.

Ver Sobre este documento... para obtener información sobre sugerencias.