在我的在线 python 课程中,我有这个问题:
实现一个字触发器抽象类,WordTrigger。它应该接受一个字符串单词作为类的构造函数的参数。
这是作为解决方案发布的:
class WordTrigger(Trigger):
def __init__(self, word):
self.word = word
def isWordIn(self, text):
import string
for letter in text:
if letter in string.punctuation:
text = text.replace(letter, ' ', 1)
text = text.lower()
wordlist = text.split(' ')
if self.word.lower() in wordlist:
return True
return False
# TODO: TitleTrigger
class TitleTrigger(WordTrigger):
def evaluate(self, story):
return self.isWordIn(story.getTitle())
# TODO: SubjectTrigger
class SubjectTrigger(WordTrigger):
def evaluate(self, story):
return self.isWordIn(story.getSubject())
我对抽象类的理解是抽象类是一个特殊的类,我们在其中定义要使用的方法而无需任何实现,因此当我们实例化一个对象并尝试访问该方法时,它不会给您带来任何实现错误。
WordTrigger
抽象类如何?