200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > python中构造方法可以被继承吗_构造函数是在python中继承的吗

python中构造方法可以被继承吗_构造函数是在python中继承的吗

时间:2022-12-10 04:42:49

相关推荐

python中构造方法可以被继承吗_构造函数是在python中继承的吗

我正在研究麻省理工学院6.00开放式课程的一个习题集,我有以下代码。。。在class Trigger(object):

def evaluate(self, story):

"""

Returns True if an alert should be generated

for the given news item, or False otherwise.

"""

raise NotImplementedError

# Whole Word Triggers

# Problems 2-5

# WordTrigger

class WordTrigger(Trigger):

def __init__(self, word):

self.word = word

def is_word_in(self, text):

word = self.word.lower()

text = text.lower()

#Remove punc and split text

for ch in string.punctuation:

text = text.replace(ch, ' ')

splitText = text.split(' ')

#Check if word is in text

return word in splitText

# TitleTrigger

class TitleTrigger(WordTrigger):

## def __init__(self, word):

## self.word = word

def evaluate(self, story):

return self.is_word_in(story.get_title())

我最初没有注释掉TitleTrigger()中的构造函数,但是当我运行所提供的测试脚本时,当测试实用程序试图调用我的TitleTrigger()类时,它抛出了一个错误。我不知道出了什么问题,所以我在解决方案代码达到顶峰,他们已经注释掉了构造函数,所以我就是这样做的,而且运行得很好。这给我留下了三个问题。。。在如果子类没有在子类中定义,那么子类将自动继承其超类的构造函数,这是正确的吗?当我把这件事说出来的时候,似乎就是这样。在

我在TitleTrigger()中使用的构造函数与它的超类WordTrigger()中的构造函数完全相同,那么我是在子类中定义它还是允许子类继承它又有什么关系呢?在

我还有另外两个WordTrigger()的子类,它们与TitleTrigger()相同,只是一个查找故事主题中的一个单词,另一个查找摘要。这两个通过了他们自己的构造函数的测试,这看起来真的很奇怪。在

如果需要的话,我可以包含测试代码,但是如果问题只是代码如何测试我的类的一个怪癖,我不需要知道这个怪癖是什么。我真正想知道的是,对于将来的情况,如果子类(子类)不定义自己的超类构造函数,子类是否会自动继承它们的超类构造函数,就像它们如何从超级类继承其他方法一样。在

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。