より大きな問題セットの一部であるコードの一部を理解するのに苦労しています。コードは次のとおりです(これWordTrigger
はのサブクラスであることに注意してくださいTrigger
)。
class WordTrigger(Trigger):
def __init__(self,word):
self.word=word
def isWordin(self, text):
text = [a.strip(string.punctuation).lower() for a in text.split(" ")]
for word in text:
if self.word.lower() in word.split("'"):
return True
return False
したがって、5行目は、句読点のテキストを削除して小文字にする役割を果たします。このstring.split(" ")
メソッドは、テキスト内のすべての単語のリストを作成し、それらを分割して、間に空白スペースを挿入します。for-statementは、「word」が「text」に含まれているかどうかを確認します。それで、コンストラクターから変数'word'を認識しますか?
self.word.lower()
コンストラクターによって初期化された単語をすべて小文字にしますか?また、「for」ループの「if」条件は、「アラート」単語の検索でアポストロフィを含む単語が除外されないようにしますか?