0
私はPythonにはかなり新しく、スーパークラスを継承しようとしています。Pythonの継承。属性を読み取ることができません
スーパークラスは、次のようになります。
class LanguageModel:
# Initialize and train the model (ie, estimate the model's underlying probability
# distribution from the training corpus)
def __init__(self, corpus):
print("""Your task is to implement three kinds of n-gram language models:
#enddef
# Generate a sentence by drawing words according to the
# model's probability distribution
# Note: think about how to set the length of the sentence
# in a principled way
def generateSentence(self):
print("Implement the generateSentence method in each subclass")
return "mary had a little lamb ."
#emddef
そして、ここで私が最初に上記の操作を実行して、コーパスの総語数を取得しようとしましたサブクラス
class UnigramModel(LanguageModel):
def __init__(self, corpus):
print("Subtask: implement the unsmoothed unigram language model")
#endddef
def generateSentence(self):
# Gets the total number of words in the corpus
wordCount = 0
for sentence in self.corpus:
for word in sentence:
wordCount += 1
print(wordCount)
ですが、それは私にエラーを与えますその関数を呼び出そうとすると、 "UnigramModel 'オブジェクトに属性'コーパス 'がありません。
'def __init __(self、corpus)の後:' add 'self.corpus = corpus'です。 –