Написание непубличного метода
На уроке мы рассмотрели, как добавлять функциональность в классы с помощью непубличных методов. Определяя методы как непубличные, вы даёте пользователю понять, что они предназначены только для внутреннего использования внутри пакета.
В этом упражнении вы определите непубличный метод, который будет использоваться классом для подсчёта слов.
Это упражнение является частью курса
Принципы разработки программного обеспечения на Python
Инструкции к упражнению
Counterиз модуляcollectionsуже загружен в ваше окружение, как и функцияtokenize().- Добавьте метод с именем
count_wordsкак непубличный метод. - Реализуйте в непубличном методе логику подсчёта содержимого атрибута
tokensс помощьюCounter(). - Используйте новый метод в методе
__init__.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
class Document:
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.____()
def _tokenize(self):
return tokenize(self.text)
# non-public method to tally document's word counts with Counter
def ____(self):
return ____(____.tokens)