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.