Añadir funcionalidad a una clase hija
Acabas de escribir una clase SocialMedia que hereda la funcionalidad de Document. Por ahora, la clase SocialMedia no tiene ninguna funcionalidad diferente de Document. En este ejercicio, incorporarás funciones a SocialMedia para especializarlo para su uso con datos de redes sociales.
A modo de referencia, a continuación se muestra la definición de « Document ».
class Document:
# Initialize a new Document instance
def __init__(self, text):
self.text = text
# Pre tokenize the document with non-public tokenize method
self.tokens = self._tokenize()
# Pre tokenize the document with non-public count_words
self.word_counts = self._count_words()
def _tokenize(self):
return tokenize(self.text)
# Non-public method to tally document's word counts
def _count_words(self):
# Use collections.Counter to count the document's tokens
return Counter(self.tokens)
Este ejercicio forma parte del curso
Principios de ingeniería de software en Python
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define a SocialMedia class that is a child of the `Document class`
class SocialMedia(Document):
def __init__(self, text):
Document.__init__(self, text)
self.hashtag_counts = self._count_hashtags()
def _count_hashtags(self):
# Filter attribute so only words starting with '#' remain
return ____