开始使用免费开始使用

为子类添加功能

您刚刚编写了一个继承自 DocumentSocialMedia 类。当前,SocialMediaDocument 在功能上没有任何区别。在本练习中,您将为 SocialMedia 添加特性,使其更适合处理社交媒体数据。

供参考,下面是 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)

本练习是课程的一部分

Python 中的软件工程原理

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

# 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 ____
编辑并运行代码